sitelink1 | |
---|---|
sitelink2 | |
sitelink3 | |
sitelink4 | |
sitelink5 | |
sitelink6 |
컨텐츠 타입이라고 하는 것은 바로 MIME 타입을 의미합니다. 컨텐츠 타입은 HTTP 응답에 반드시 포함되어야 하는 HTTP 헤더 정보입니다.
예를 들면, response.setContentType("application/jar"); 의 코드는 브라우저에게 지금 내려보내는 것이 "application/jar" 형태라는 것을 알려주는 것입니다.
만일 그것이 동영상 파일을 의미한다면 브라우저는 윈도우 미디어 플레이어를 준비해두고 동영상을 플레이 할 준비를 할 것입니다.
"Response의 출력 스트림에 데이터를 기록하고 난 다음에 컨텐츠 타입을 설정하는 것은 잘못된 것이다"라는 것입니다.
이는 컨텐츠 타입을 먼저 설정하고 데이터를 좀 쓰다가, 컨텐츠 타입을 다른 것으로 바꾸고 또 데이터를 쓰는 것과 같은 일을 할 수 없다는 것입니다.
만약 이렇게 했다면 , 테이터를 받는 브라우저는 제대로 된 처리를 수행하지 못 할겁니다.
제대로 프로그래밍하려면, setContentType()을 제일 먼저 호출하고, 그 다음 출력 스트림(getWriter()나 getOutputStream()) 메서드를 호출하는 것입니다.
이렇게 할 때만 컨텐츠 타입과 출력 스트림의 충돌을 방지할 수 있습니다.
HttpServletResponse.setContentType() 매개변수 목록
- text/html;charset=UTF-8
- application/json;charset=UTF-8