HTTP Message를 통해 모든 것을 전송한다.
- HTML, TEXT, IMAGE, 음성, 영상, 파일, JSON 등
HTTP Message는 크게 4부분으로 나눌 수 있다.
크게 4종류로 나눌 수 있다.
Start-line 시작라인
header 헤더 CRLF(CRLF: 개행)
empty line CRLF
message body
MDN - HTTP 메시지

요청 메시지
클라이언트가 서버에게 요청하는 메시지
start line(request-line)
- method request-target HTTP-version
- method는 서버가 수행해야할 동작을 지정해준다.
응답 메시지
요청에 대해 응답하는 메시지
start line(status-line)
- HTTP-version status-code reason-phrase
- status-code, reason-phrase는 서버의 상태를 의미한다.
header
HTTP 전송에 필요한 부가정보(인증 정보, 요청 클라이언트의 웹브라우저 정보 등)
- header-field
- field-name ":" OWS field-value OWS (OWS: 띄어쓰기 허용)
- ex. Host: www.naver.com (o)
- ex. Host :www.naver.com (x)
field-name은 대소문자는 구분하지 않는다.