웹에서 다양한 콘텐츠를 전송할 때 사용하는 MIME Type에 대해 알아보자
웹에서 콘텐츠를 전송할 때 정해진 타입을 지정할 수 있으며 그 타입에 따라서 서버 또는 웹브라우저가 동작을 한다. 따라서 웹에서 전송 가능한 모든 대상들은 MIME
타입을 가지고 있다.
type/subtype
위와 같은 MIME
타입은 /
를 기준으로 왼쪽은 타입, 오른쪽은 서브 타입을 지정한다. 공백은 허용하지 않으며 대소문자를 구분하지 않는다. 대소문자를 구분하지 않지만 관례에 따라서 소문자로 작성을 한다.
개별 타입은 기본적인 문서의 종류를 의미하는 카테고리이며 다음과 같이 타입과 서브 타입을 가질 수 있다. 특정 서브 타입이 없는 텍스트 문서의 경우에는 plain
을 서브 타입으로 사용한다.
타입 | 설명 | 타입/서브타입 예시 |
---|---|---|
text | 텍스트를 포함하는 모든 문서를 나타내며 원칙적으로 사람이 읽을 수 있어야 한다. | text/plain, text/html, text/css, text/javascript |
image | 간단한 애니메이션을 갖는 GIF를 포함해 모든 종류의 이미지를 나타낸다. | image/gif, image/png, image/jpeg |
audio | 모든 종류의 오디오 파일들을 나타낸다. | audio/midi, audio/mp3, audio/mpeg, audio/webm, audio/ogg, audio/wav |
video | 모든 종류의 비디오 파일들을 나타낸다. | video/mp4, video/webm, video/ogg |
application | 일반적으로 소프트웨어로 생성된 모든 종류의 이진 데이터를 나타낸다. | application/vnd.mspowerpoint, application/xhtml+xml, application/xml, application/pdf |
multipart/form-data
다양한 MIME
타입을 개별적인 파트로 나누어 전송할 때 사용한다. 일반적으로 HTML에서 Form을 POST 방식으로 텍스트 및 바이너리(binary) 데이터를 함께 전송할 때 사용한다.