본문 바로가기

모든 개발자를 위한 HTTP 웹 기본 지식(김영한)

HTTP 메시지

                기본

start-line 시작라인
header 헤더
empty line 공백라인 (CRLF)
message body

 

HTTP 요청 메시지

GET /search?q=hello&hl=ko HTTP/1.1  시작라인
HOST : www.google.com                   헤더
공백
 

시작라인 : request-line

request-line = HTTP 메서드 (GET: 조회) + 요청대상 (/search?q=hello&hl=ko) + HTTP Version

 


HTTP 응답 메시지

HTTP/1.1 200 OK                             시작라인
Content-Type: text/html;charset=UTF-8 헤더
Content-Length: 3423
공백                                 
<html>                                         message body
  <body>...<body>
</html>

시작라인 : status-line

status-line = HTTP Version + status-code +  reason-phrase(사람이 이해할 수 있는 짧은 글) 

 

200 : 성공

400 : 클라이언트 요청 오류

500 : 서버 내부 오류


HTTP 헤더

  • HTTP 전송에 필요한 모든 부가정보
  • 예) 메시지 바디의 내용, 메시지 바디의 크기, 압축, 인증, 요청 클라이언트(브라우저) 정보..
  • 표준 헤더가 엄청 많다.
  • Content-Type:(OWS)....
  • 필드 네임 대소문자 구분 X / 필드네이 뒤에 띄어쓰기 X / Content-Type : text... X

HTTP 메시지 바디

 

실제 전송할 데이터

HTML 문서, 이미지, 영상 JSON 등등 byte로 표현할 수 있는 모든 데이터 전송 가능

'모든 개발자를 위한 HTTP 웹 기본 지식(김영한)' 카테고리의 다른 글

비 연결성(connectionless)  (0) 2022.02.19
무상태 프로토콜(Stateless)  (0) 2022.02.18
클라이언트 서버 구조  (0) 2022.02.18
[ HTTP ]  (0) 2022.02.18
웹 브라우저 요청 흐름  (0) 2022.02.18