자바·JSP2014. 10. 8. 19:49

파일 다운로드시 크롬에서 "서버에서 중복헤더를 수신했습니다." 라고 나오는경우는 

파일명에 콤마 "," 가 들어가있어서 그럴 경우가 많다.

참고로 크롬이외의 IE등에서는 에러가 발생하지 않는다..

검색해보면 .replace 함수로 콤마를 변경하면 된다고 하는데, 
그냥 단순히 파일명이 변경되는게 싫어서 더 검색하다보니 결국 찾았다.


그리 어려운것도 아니고 파일명을 따옴표로 감싸주기만 하면된다.

Response.AddHeader("Content-Disposition", "attachment;filename=" + file.Name+ "");
Response.AddHeader("Content-Disposition", "attachment;filename=\"" + file.Name+ "\"");



+ 추가 2014/04/23

IE에서 한글파일 다운로드시 파일명이 깨지는데.. 파일명을 다시 인코딩 해주어야 한다..

Response.AddHeader("Content-Disposition", "attachment;filename=\"" + HttpUtility.UrlEncode(file.Name, System.Text.Encoding.UTF8) + "\"");


'자바·JSP' 카테고리의 다른 글

jsoup 사용 예제  (0) 2015.05.29
MyBatis / iBatis에서 조건절에 Like 검색 시 처리하는 방법  (0) 2015.01.30
파일 사이즈체크  (0) 2014.04.11
Maven이란 무엇인가?  (0) 2014.03.06
[JSTL] JSTL 필수 문법  (0) 2013.08.24
Posted by 미랭군