Post

NetWork[HTTP-Header-3]

일반 헤더

메시지에 대한 아주 기본적인 정보를 제공해주는헤더입니다.

일반 헤더는 클라이언트와 서버가 모두 사용하는 공용적으로 사용되는 헤더 입니다.

Connection

  • 클라이언트와 서버가 요청/응답 연결에 대한 옵션을 정할 수 있게 해줍니다.

Date

  • 메시지가 만들어진 날짜와 시간을 제공합니다.

MIME-Version

  • 발송자가 사용한 MIME의 버전을 알려줍니다.

Trailer chunked transfer

  • 인코딩된 메시지의 끝 부분에 위치한 헤더들의 목록을 나열합니다.

Upgrade

  • 업그레이드 하길 원하는 새 버전이나 프로토콜을 알려줍니다.

Via

  • 해당 메시지가 어떤 중계기(프록시, 게이트웨이)를 거쳐 왔는지 보여줍니다.

일반 캐시 헤더

Cache-Control

  • 메시지와 함께 캐시 지시자를 전달하기 위해 사용됩니다.

Pragma

  • 메시지와 함께 지시자를 전달하는 다른 방법이고 캐시에 국한되지 않습니다.

요청 헤더

요청메시지만 오로지 가질 수 있는 헤더입니다.

Client-IP

  • 클라이언트의 IP를 제공합니다.

From

  • 클라이언트의 메일 주소를 제공합니다.

Host

  • 요청의 대상이 되는 서버의 호스트 명과 포트를 제공합니다.

Referer

  • 현재의 요청 URI가 들어있었던 문서의 URL을 제공합니다.

User-Agent

  • 요청을 보낸 애플리케이션의 이름을 서버에 전달합니다.

Accept 관련 헤더

Accept 헤더는 서버에게 클라이언트가 자신의 요청에 대응하는 어떤 미디어 타입도 받아들일 것임을 의미하는 헤더입니다.

Accept헤더를 이용해 클라이언트는 서버로부터 받기 원하는 콘텐츠 유형 및 미디어 타입을 전송할 수 있습니다.

Accept

  • 서버가 클라이언트에게 보내도 되는 미디어 종류를 말해줍니다.

Accpet-Charset

  • 서버가 클라이언트에게 보내도 되는 문자 집합을 말해줍니다.

Accpet-Encoding

  • 서버가 클라이언트에게 보내도 되는 인코딩을 말해줍니다.

Accpet-Language

  • 서버가 클라이언트에게 보내도 되는 언어를 말해줍니다.

조건부 요청 헤더

클라이언트가 서버에게 요청을 할 때, 제약을 넣을때 사용하는 헤더 입니다.

Expect

  • 클라이언트가 요청에 필요한 서버의 행동을 열거할 수 있게 해줍니다.

if - Match

  • 문서의 엔터티 태그와 어진 엔터티 태그와 일치하는 경우에만 문서를 가져옵니다.

if - None - Match

  • if-Match와 비슷하지만, 일치하지 않는 경우에만 문서를 가져옵니다.

if - Modified-Since

  • 주어진 날짜 이후에 리소스가 변경되지 않았다면 요청을 제한합니다.

if - Unmodified-Since

  • 주어진 날짜 이후에 리소스가 변경 되었다면 요청을 제한합니다.

if - Range

  • 문서의 특정 범위에 대한 요청을 할 수 있게 해줍니다.

Range

  • 서버가 범위 요청을 지원한다면, 리소스에 대한 특정 범위를 요청합니다.

요청 보안 헤더

HTTP는 자체적으로 요청을 위한 간단한 인증 요구/응답 체계를 가지고 있습니다.

즉, HTTP의 요청 보안 헤더는 헤더 중에서 보안과 관련된 정보를 전달하는 역할을 하고 있습니다.

Authorization

  • 클라이언트가 서버에게 제공하는 인증 그 자체에 대한 정보를 담고 있습니다.
  • 클라이언트가 서버에게 토큰을 제공할때 사용합니다.

Cookie2

  • 요청자가 지원하는 쿠키의 버전을 알려줄 때 사용합니다.

HTTP 응답 헤더

http에서 응답 헤더는 클라이언트에게 부가정보를 제공하는 역할을 하고 있습니다.

즉, 서버는 요청이 오면 이에 맞는 처리를 하고, 처리하고 나서 다시 응답을 보내는데, 이때 HTTP 헤더에는 응답헤더가 실려서 보내지게 됩니다.

응답 헤더에는 누가 응답을 보내고 있는지 부터 해서 많은 정보를 담고 있고, 응답에 대한 특별한 설명도 제공할 수 있습니다.

응답 헤더

| 헤더 | 설명 | | — | — | | Age | 응답이 얼마나 오래 되었는지 | | Public | 서버가 특정 리소스에 대해 지원하는 요청 메서드의 목록 | | Retry-After | 현재 리소스의 상태 | | Server | 서버의 이름과 버전 | | Title | 제목 | | Warning | 사유구절 ( 예 : OK 등 )보다 더 자세한 경고 메세지 |

응답 보안 헤더

요청 보안헤더와 마찬가지로, 응답 헤더에도 보안 헤더가 속해 있습니다.

기본적인 응답 보안 헤더는 다음과 같습니다.

헤더설명
Proxy-Authenticate프록시 서버에서 클라이언트로 보낸 인증요구의 목록
Set-Cookie서버가 클라이언트를 인증할 수 있도록 클라이언트 측에 토큰을 설정하기 위해 사용됩니다.
Set-Cookie2Set-Cookie와 비슷합니다.
WWW-Authenticate서버에서 클라리언트로 보낸 인증요구의 목록입니다.

엔티티 헤더

엔티티 헤더는 일반 헤더와 같이 공용적으로 쓰이는 헤더입니다.

엔티티 헤더는 양 타입의 메시지에 모두 나타낼 수 있습니다.

엔티티 헤더는 개체의 타입부터 시작해서 주어진 리소스에 요청할 수 있는 유효한 메서드 등 광범위한 정보를 제공하고 있습니다.

헤더설명
Allow엔티티에 대해 수행될 수 있는 요청 메서드들을 나열합니다.
Location클라이언트에게 엔티티가 실제로 어디에 위치해 있는지 말해줍니다.

콘텐츠 헤더

콘텐츠 헤더는 엔티티의 콘텐츠에 대한 구체적인 정보를 제공할 떄 쓰입니다.

콘텐츠 헤더는 종류, 크기, 기타 콘텐트를 처리할 때 유용하게 활용될 수 있는 것들입니다.

헤더(Content-N)설명
Base본문에서 사용된 상대 URL을 계산하기 위한 기저 URL입니다.
Encoding본분에 적용된 인코딩에 대한 설명입니다.
Language본문을 이해하는데 사용되는 적절한 자연어에 대한 설명입니다.
Length본문의 길이나 실제 크기에 관한 설명입니다.
Location리소스가 실제로 어디에 위치해있는지에 대해 알려줍니다.
MD5본문의 MD5 체크섬입니다.
Range전체 리소스에서 이 엔티티가 해당하는 범위를 바이트로 표시해 알려줍니다.
Type이 본문이 어떤 종류의 객체인지 알려줍니다.

엔티티 캐싱 헤더

일반 캐싱 헤더에서는 언제 어떻게 캐시가 되어야 하는지에 대한 지시자를 제공했다면, 엔티티 캐싱 헤더는 엔티티 캐싱에 대한 정보를 제공합니다.

헤더설명
ETag엔티티에 대한 엔티티 태그입니다.
Expires이 엔티티가 더 이상 유효하지 않아 원본을 다시 받아와야 하는 일시를 알려줍니다.
Last-Modified가장 최근에 엔티티가 변경된 날짜를 알려줍니다.
This post is licensed under CC BY 4.0 by the author.