이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 14464|회답: 1

http 응답 헤더 내용 처리

[링크 복사]
게시됨 2016. 10. 14. 오전 9:11:43 | | |
콘텐츠 처리는 MIME 프로토콜의 확장으로, MIME 사용자 에이전트에게 첨부된 파일을 표시하도록 지시합니다. Internet Explorer가 헤더를 받으면 파일 다운로드 대화상자가 활성화되고, 파일 이름 상자에 헤더에 지정된 파일 이름이 자동으로 채워집니다. (이는 설계에 의해 발생한 것임을 유념하세요; 이 기능을 사용해 문서를 사용자의 컴퓨터에 저장할 때는 사용자가 어디에 저장할지 묻지 않고는 사용할 수 없습니다. )  

        서버가 클라이언트 브라우저에 파일을 보낼 때, 브라우저에서 지원하는 파일 형식이라면 기본적으로 브라우저를 통해 열리며, 텍스트, jpg 등이 브라우저에서 직접 표시됩니다. 사용자가 저장 요청을 받아야 할 경우, Content-Disposition을 사용해 처리해야 하며, 핵심은 첨부파일을 추가하는 것입니다:

Response.AppendHeader("Content-Disposition","attachment; filename=FileName.txt");

참고: 이 모드는 저장 또는 열라는 안내를 받으며, 열어도 IE가 직접 열지 않고 메모장 같은 관련 프로그램으로 열립니다.

Content-Disposition은 사용자가 요청한 콘텐츠를 파일로 저장하고자 할 때 기본 파일 이름을 제공하는 것입니다. 구체적인 정의는 다음과 같습니다:

content-disposition = "Content-Disposition" ":"

성향 유형 *( ";" disposition-parm )

성향 유형 = "애착" | disp-extension-token(디스프-확장-토큰)

disposition-parm = filename-parm | disp-extension-parm

filename-parm = "filename" "=" 인용 문자열

disp-extension-token = 토큰

disp-extension-parm = 토큰 "=" ( 토큰 | 인용 문자열 )

위 구체적인 예시들을 볼 수 있습니다:
Cache-Control:private
Content-Disposition:attachment; filename=Index1.png
Content-Length:328462
Content-Type:image/png
Date:Fri, 14 Oct 2016 01:08:04 GMT
Server:Microsoft-IIS/8.0
X-AspNet-Version:4.0.30319
X-AspNetMvc-Version:5.2
X-Powered-By:ASP.NET

Content-Disposition: attachment; filename=“filename.xls”

       물론 파일명 매개변수에 경로 정보를 포함할 수 있지만, User-Agnet은 이 정보를 무시하고 경로 정보의 마지막 부분만 파일 이름으로 사용합니다. 응답 유형인 application/octet-stream에서 이 헤더를 사용하면, 콘텐츠를 직접 표시하고 싶지 않다는 뜻이지만, "파일 다운로드" 대화상자가 뜨고, 그 다음에 "열기" 또는 "저장" 여부를 결정해야 합니다.

노트:

1. 브라우저가 다운로드 대화상자를 띄우도록 코드 내 Content-Disposition을 사용할 때. response.addHeader("Content-Disposition","attachment"); 브라우저 캐싱을 비활성화한 적이 없는지 확인하세요. 다음과 같습니다:

response.setHeader("Pragma", "노캐시");  
response.setHeader("캐시 제어", "캐시 없음");  
response.setDateHeader("만료", 0);





이전의:C# 큰 파일 복사 읽기와 쓰기
다음:c# 파일의 SHA256 값을 계산합니다
 집주인| 게시됨 2024. 12. 13. 오후 6:29:16 |
Java OSS 알리바바 클라우드 업로드 파일 설정 파일 이름 다운로드
https://www.itsvse.com/thread-7853-1-1.html
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com