IT박스

"다른 이름으로 저장"대화 상자를 사용하지 않고 응답 파일 이름을 설정하는 방법

itboxs 2020. 8. 4. 07:40
반응형

"다른 이름으로 저장"대화 상자를 사용하지 않고 응답 파일 이름을 설정하는 방법


적절한 응답을 설정하는 일부 응답에서 스트림을 반환합니다 content-type. 내가 찾고있는 행동은 다음과 같습니다.

  • 브라우저가 주어진 컨텐츠 유형의 컨텐츠를 렌더링 할 수있는 경우 브라우저 창에 표시해야합니다.

  • 브라우저가 컨텐츠를 렌더링하는 방법을 모르는 경우 응답에 제공된 파일 이름이어야하는 "다른 이름으로 저장"대화 상자를 표시해야합니다.

문제는 내가 Content-Disposition헤더를 다음과 같이 설정하면 :

"attachment; filename ="myfile.txt ""

브라우저는 항상 "다른 이름으로 저장"대화창을 표시합니다.

을 설정하지 않으면 Content-Disposition"다른 이름으로 저장"대화 상자에 사용 된 파일 이름이 필자의 경우 작동하지 않는 URL에있는 파일 이름입니다.

나는 또한 설정 Content-Disposition시도 inline했지만 결과는 동일합니다.


올바른 방법은 다음과 같습니다.

Content-Disposition: inline; filename="myfile.txt"


기본적으로 가능한지 확실하지 않습니다. 보안 문제로 인해 브라우저는 처리 할 수있는 모든 콘텐츠 유형을 보내지 않지만 몇 가지만 보내면 Accept-Encoding시나리오에 큰 도움이되지 않습니다.

사용자에게 원하는 것을 물어보고 해당 정보를 프로필에 저장할 수 있습니다.

참고 URL : https://stackoverflow.com/questions/1741353/how-to-set-response-filename-without-forcing-save-as-dialog

반응형