[Node.js] 01. HTTP Header, Body

HTTP 구조

HTTP(Hyper Text Transport Protocol)통신을 사용하면 클라이언트와 서버간
2가지 유형의 메세지(HTTP Request, HTTP Response) 전송 가능.

png

HTTP Header

HTTP 헤더(header)는 HTTP 본문(body) 및 req/res에 대한 정보를 포함 req/res에 대한 정보는 req/res에 대한 일반 정보를 포함(ex. 요청 시간, 요청에 사용된 브라우저 등) 헤더의 프로퍼티는 이름-값(Name-Value) 쌍으로 설정, 콜론(:)으로 구분.

  • ex) 이름 : 값


HTTP Header 유형

HTTP 1.1의 헤더는 4부분으로 나눠짐

  • General Header (공통 헤더)
  • Request Header (요청 헤더)
  • Response Header (응답 헤더)
  • Entity Header (엔티티 헤더) : 요청 헤더랑 응답 헤더에 포함되어 있는거 같다

General Header(공통 헤더)

요청과 응답 모두에 적용되지만 바디에서 최종적으로 전송되는 데이터와는 관련이 없는 헤더

► General Header
   ┣━ Request URL     : 현재 페이지 주소
   ┣━ Request Method  : 요청 종류
   ┣━ Status Code     : Http 상태코드
   ┣━ Remote Address  : 접속자 IP 주소 (보안 주의!)
   ┣━ Referrer Policy : 

Request Header(요청 헤더)

웹 브라우저(클라이언트)가 웹서버에게 요청한 데이터.

► Request Header (view source)
   ┣━ GET / HTTP/1.1     : 요청 행(request line)
   ┣━ Host               : 웹서버 주소
   ┣━ Connection         : 전송완료후 네트워크 접속 유지할지말지 제어 (keep-alive: 연결지속)
   ┣━ sec-ch-ua          :
   ┣━ sec-ch-ua-mobile   :
   ┣━ sec-ch-ua-platform : 
   ┣━ User-Agent         : 요청하는 웹브라우저, OS 등 정보
   ┣━ Accept             :
   ┣━ Accept-Encoding    : 압축 지원 포멧
   ┣━ Accept-Language    : 언어 지원
   ┣━ If-Modified-Since  : 해당 파일을 언제 다운받았는지

Response Header(응답 헤더)

웹서버가 웹 브라우저(클라이언트)에게 응답한 데이터.

► Response Header (view source)
   ┣━ HTTP/1.1 200 OK : 요청 행(request line)
   ┣━ X-Powered-By    : 웹서버 주소
   ┣━ Content-Type    : 리소스의 Media Type 명시  ex) text/html
   ┣━ Content-Length  : 접속자 IP 주소 (보안 주의!)
   ┣━ Last-Modified   : 
   ┣━ ETag            : 특정 버전의 리소스를 식별하는 식별자
   ┣━ Date            : 메세지가 만들어진 날짜, 시간
   ┣━ Connection      : 전송완료후 네트워크 접속 유지할지말지 제어 (keep-alive: 연결지속)
   ┣━ Keep-Alive      : 타임아웃, 요청 최대 개수   ex) timeout=5, max=1000

출처

MDN

카테고리:

업데이트: