최대 1 분 소요


HTTP 메시지

HTTP 요청 메시지 예시

GET /search?q=hello&hl=ko HTTP/1.1
Host: www.google.com

HTTP 응답 메시지 예시

HTTP/1.1 200 OK
Content-Type: text/html;charset=UTF-8
Content-Length: 3423

<html>
    <body>...</body>
</html>


HTTP 메시지 구조

httpForm

시작 라인(요청 메시지)

GET /search?q=hello&hl=ko HTTP/1.1
~~~~...
  • method SP(공백) request-target SP HTTP-version CRLF(엔터)

  • HTTP 메서드 (GET: 조회)
  • 요청 대상 (/search?q=hello&hl=ko) -> q(query)는 key=value 형식
  • HTTP Version

요청 대상

  • absolute-path[?query] (절대경로[?쿼리])
  • 절대경로= “/”로 시작하는 경로

시작 라인(응답 메시지)

HTTP/1.1 200 OK

~~~...
  • HTTP-version SP status-code SP reason-phrase CRLF

  • HTTP 버전
  • HTTP 상태 코드: 요청 성공, 실패를 나타냄
  • 이유 문구 : 사람이 이해할 수 있는 짧은 상태 코드 설명 글

HTTP 헤더

  • field-name “:” OWS field-value OWS (OWS:띄어쓰기 허용)
  • field-name은 대소문자 구분 없음

hadder

용도

  • HTTP 전송에 필요한 모든 부가정보
  • ex) 메시지 바디의 크기, 압축, 인증, 요청 클라이언트 등등..
  • 필요시 임의의 헤더 추가 가능
    • helloworld: hihi

HTTP 바디

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

body

[참고] 헤더와 바디 사이의 공백부분(CRLF)은 필수사항이다!


<출처 : 인프런 - 모든 개발자를 위한 HTTP 웹 기본 지식(김영한)>

태그:

카테고리:

업데이트:

댓글남기기