백엔드 공부 메모/네트워크
HTTP 헤더(1) - 개요
볼륨조절불가
2024. 2. 29. 20:32
728x90
* 해당 게시글은 <그림으로 배우는 Http&Network Basic>을 읽고 정리하면서 공부하기 위해 메모하듯 작성하는 글입니다.
HTTP 헤더 필드
HTTP 버전과 확장 사양에 따라 지원하는 내용이 달라지기에, HTTP/1.1과 일반적으로 자주 사용되는 부분에 대해 다룸
역할
- 리퀘스트와 리스폰스 전달시 부가적으로 중요한 정보를 포함하는 데 사용
- 아래 정보를 브라우저나 서버에 제공하는 데 사용됨
- 메시지 바디의 크기
- 사용하고 있는 언어
- 인증 정보 등
HTTP 헤더 필드의 구조
- 헤더 필드 명과 헤더 필드 값으로 구성
- 필드명과 값은 콜론(:)으로 구분
- 하나의 필드가 여러 필드 값을 포함할 수도 있음
Content-Type: text/html
위의 예시에서 헤더 필드 명은 Content-Type, 필드 값은 text/html
헤더 필드의 4가지 구분
일반적 헤더 필드
리퀘스트, 리스폰스 메시지 둘 다 사용되는 헤더
리퀘스트 헤더 필드
리퀘스트 메시지에 사용되는 헤더
- 리퀘스트의 부가적 정보, 클라이언트 정보, 리스폰스의 콘텐츠에 대한 정보를 포함
리스폰스 헤더 필드
리스폰스 메시지에 사용되는 헤더
- 리스폰스의 정보와 서버의 정보를 제공하거나, 클라이언트의 추가 정보를 요구하는 등에 사용
엔티티 헤더 필드
리퀘스트, 리스폰스 메시지에 포함된 엔티티에 관한 헤더
- 콘텐츠 갱신 시간 등 엔티티에 대한 정보를 전달할 때 사용
그 외 헤더 필드
RFC2616에 정의된, HTTP/1.1에서 공식 지원하는 47종의 헤더 이외의 확장 헤더 필드
캐싱 프록시의 동작을 정의하는 헤더
End-to-end 헤더
- 리퀘스트나 리스폰스의 최종 수신자에게 전송되는 헤더
- 캐시에서 구축된 리스폰스 중 보존되어야 하고, 다시 전송되지 않으면 안됨
Hop-by-hop 헤더
- 한 번 전송에 대해서만 유효하고, 캐시와 프록시에 의해 전송되지 않는 헤더
- HTTP/1.1과 그 이후에 사용되는 Hop-by-hop 헤더는 Connection 헤더 필드에 열거해야 함
Hop-by-hop 헤더 종류
- Connection
- Keep-Alive
- Proxy-Authenticate
- Proxy-Authorization
- Trailer
- TE
- Transfer-Encoding
- Upgrade
위의 8개를 제외한 나머지는 모두 End-to-end 헤더로 분류
728x90