현재 번역은 완벽하지 않습니다. 한국어로 문서 번역에 동참해주세요.
Content-Type
개체 헤더는 리소스의 media type을 나타내기 위해 사용됩니다.
응답 내에 있는 Content-Type
헤더는 클라이언트에게 반환된 컨텐츠의 컨텐츠 유형이 실제로 무엇인지를 알려줍니다. 브라우저들은 어떤 경우에는 MIME 스니핑을 해서 이 헤더의 값을 꼭 따르지는 않을 겁니다; 이를 막기 위해, X-Content-Type-Options
헤더를 nosniff
으로 설정할 수 있습니다.
요청 내에서, (POST
혹은 PUT
처럼), 클라이언트는 서버에게 어떤 유형의 데이터가 실제로 전송됐는지를 알려줍니다.
헤더 유형 | Entity header |
---|---|
Forbidden header name | no |
문법
Content-Type: text/html; charset=utf-8 Content-Type: multipart/form-data; boundary=something
디렉티브
media-type
- 리소스 혹은 데이터의 MIME type.
- charset
- 문자 인코딩 표준.
- boundary
- 멀티파트 개체에 대해
boundary
디렉티브는 필수인데, 이메일 게이트를 통해 매우 탄탄해졌다고 알려진 캐릭터셋의 1~70개의 문자들로 구성되며, 빈 공백으로 끝나지 않습니다. 이는 메시지의 멀티 파트 경계선을 캡슐화하기 위해 사용됩니다.
예제
Content-Type
in HTML forms
HTML 폼 전송으로 일어나는 POST
요청 내에서, 요청의 Content-Type
은 <form>
요소 상의 enctype
속성에 의해 지정됩니다.
<form action="/" method="post" enctype="multipart/form-data"> <input type="text" name="description" value="some text"> <input type="file" name="myFile"> <button type="submit">Submit</button> </form>
요청은 다음과 같을 겁니다(여기서 설명할 필요가 없는 헤더들은 생략되었습니다):
POST /foo HTTP/1.1 Content-Length: 68137 Content-Type: multipart/form-data; boundary=---------------------------974767299852498929531610575 Content-Disposition: form-data; name="description" ---------------------------974767299852498929531610575 some text ---------------------------974767299852498929531610575 Content-Disposition: form-data; name="myFile"; filename="foo.txt" Content-Type: text/plain (content of the uploaded file foo.txt) ---------------------------974767299852498929531610575
명세
명세 | 제목 |
---|---|
RFC 7233, section 4.1: Content-Type in multipart | Hypertext Transfer Protocol (HTTP/1.1): Range Requests |
RFC 7231, section 3.1.1.5: Content-Type | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |
브라우저 호환성
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Feature | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | Servo |
---|---|---|---|---|---|---|---|
Basic Support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
Feature | Android | Chrome for Android | Edge Mobile | Firefox for Android | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Basic Support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
함께 참고할 내용
Accept
과Accept-Charset
Content-Disposition
206
Partial ContentX-Content-Type-Options