네트워크/HTTP

HTTP 헤더 개요

Gh1324 2022. 9. 29. 09:30
728x90

HTTP 헤더 필드

: field-name ":" OWS field-value OWS (OWS:띄어쓰기 허용)

field-name은 대소문자 구분 없음

 

 

HTTP 헤더의 용도

  • HTTP 전송에 필요한 모든 부가정보
  • 예) 메시지 바디의 내용, 메시지 바디의 크기, 압축, 인증, 요청 클라이언트, 서버 정보, 캐시 관리 정보...등
  • 표준 헤더가 너무 많음
  • 필요시 임의의 헤더 추가 가능
    • helloword : hihi

HTTP 헤더 과거 표준(RFC2616)

헤더 분류

  • General 헤더 : 메시지 전체에 적용되는 정보, 예) Connection : close [요청이든 응답이든 다 들어감]
  • Request 헤더  : 요청정보, 예) User-Agent: Mozilla/5.0 (Macintosh; ...)
  • Response 헤더 : 응답 정보, 예) Server : Apache
  • Entity 헤더 : 엔티티 바디 정보 , 예) Content-Type: text/html, Content-Length L 3423

 

메시지 바디 ( messege body ) 

  • 메시지 본문(message body)은 엔티티 본문(entity body)을 전달하는데 사용
  • 엔티티 본문은 요청이나 응답에서 전달할 실제 데이터
  • 엔티티 헤더는 엔티티 본문의 데이터를 해석할 수 있는 정보 제공
    • 데이터 유형(html, json), 데이터 길이, 압축 정보 등등

HTTP 표준

  • 1999년 RFC2616 => 폐기됨 
  • 2014년 RFC7230 ~ 7235 등장

 

HTTP 헤더 현재 표준 ( RFC7230)

  • 메시지 본문(message body)을 통해 표현 데이터 전달
  • 메시지 본문 = 페이로드(payload)
  • 표현은 요청이나 응답에서 전달할 실제 데이터
  • 표현 헤더는 표현 데이터를 해석할 수 있는 정보 제공
    • 데이터 유형(html, json), 데이터 길이, 압축 정보 등등

 

RFC723x 변화

  • 엔티티(Entity) -> 표현(Representation)
  • Representation = representation Metadata + Representation Data
  • 표현 = 표현 메타데이터  + 표현 데이터

 

728x90

'네트워크 > HTTP' 카테고리의 다른 글

[ HTTP 헤더 ] 일반 정보  (0) 2022.10.06
협상 및 전송 방식  (0) 2022.10.04
HTTP 상태코드 400 VS 500  (0) 2022.09.28
HTTP 상태코드 : 300번대  (0) 2022.09.27
HTTP API 설계 예시  (1) 2022.09.25