728x90
http 통신에서 header와 body
- http 통신 방식 = 패킷 스위칭 방식
- http 패킷은 헤더와 바디로 이루어져있음.
header | 데이터에 대한 설명(메타데이터) |
body | 실제 데이터 |
- header에는 내가 보낼 데이터의 타입이 뭔지 기술해줘야함.
- 그 때 쓰는거 -> MIME 타입
- MIME 타입은 헤더의 Content-Type 에 기술한다.
파일의 종류
- 바이너리 파일: 문자와 숫자가 저장되어 있는 파일. 데이터를 있는 그대로 읽고 쓴다
- 텍스트 파일: 문자만 저장되어 있는 파일. 숫자를 문자로 변환 후 쓴다.
- 바이너리 파일은 문자를 문자로 wrtie, 숫자는 숫자로 wrtie
- 텍스트 파일은 문자를 문자로 wrtie, 숫자를 문자로 변환하여 write.
- 숫자 12를 문자 '1''2'로 저장한다.
MIME
- 텍스트 기반 프로토콜(http)에 바이너리 데이터를 전송하기 위해 고안됨
- http 프로토콜은 텍스트 기반이지만, 다양한 종류 파일 전송 가능
- HTTP body의 데이터 타입을 기술하기 위해 사용. Content-Type 헤더에 기술한다
MIME타입의 일반적인 구조
type/subtype
- type과 subtype으로 기술됨
- 예시: text/plain, image/gif, audio/midi, application/pdf
MIME 타입 종류
https://developer.mozilla.org/ko/docs/Web/HTTP/Basics_of_HTTP/MIME_types
text | 텍스트를 포함하는 모든 문서 | text/plain, text/html, text/css, text/javascript |
image | 이미지 | image/gif, image/png, image/jpeg, image/bmp, image/webp |
audio | 오디오 파일 | audio/midi, audio/mpeg, audio/webm, audio/ogg, audio/wav |
video | 비디오 파일 | video/webm, video/ogg |
application | 이진 데이터 | application/octet-stream, application/pkcs12, application/vnd.mspowerpoint, application/xhtml+xml, application/xml, application/pdf |
- 이미지, 동영상, 프로그램은 모두 바이너리 파일이다.
MIME 타입 지정방법
- response.setContentType("text/html")
- 이걸 적어줘야 브라우저가 응답을 받았을 때 해석이 가능하다.
728x90
'Backend' 카테고리의 다른 글
pm2 에러: 이 시스템에서 스크립트를 실행할 수 없으므로 파일을 로드할 수 없습니다. (2) | 2022.10.07 |
---|