HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
📝
남득윤 학습 저장소
/
모든 개발자를 위한 HTTP 웹 네트워크
모든 개발자를 위한 HTTP 웹 네트워크
/
7. HTTP 헤더 1 - 일반 헤더
7. HTTP 헤더 1 - 일반 헤더
7. HTTP 헤더 1 - 일반 헤더

7. HTTP 헤더 1 - 일반 헤더

HTTP 헤더
header-field
field-name ":" OWS field-value OWS (OWS:띄어쓰기 허용)
  • HTTP 전송에 필요한 모든 부가 정보
 
 

표현

Representation= representation Metadata + Representation Data
  • 헤더 : 전송, 응답 둘다 사용
  • Content-Type
    • 표현 데이터의 형식
    • e.g.) text/html;charset=utf-8, application/json, image/png
  • Content-Encoding
    • 표현 데이터의 압축 방식
    • e.g.) gzip, deflate, identify
  • Content-Language
    • 표현 데이터의 자연 언어
    • e.g.) ko, en, en-US
  • Content-Length
    • 표현 데이터의 바이트 길이
    • Transfer-Encoding과 함께 사용하면 안됨
 

협상(Content-Negotiation)

💡
content negotiation은 user agent가 사용자에게 가장 알맞는 형태의 리소스를 받을 수 있도록, 리소스를 어떤 형태로 받을지 정할 수 있도록하게 하는 메커니즘입니다. 이때 리소스의 형태는 문서의 언어나, 이미지의 포맷이나, 콘텐츠의 인코딩에 해당하는 부분을 말합니다.
  • Accept: 클라이언트가 선호하는 미디어 타입 전달
  • Accept-Charset: 클라이언트가 선호하는 문자 인코딩
  • Accept-Encoding: 클라이언트가 선호하는 압축 인코딩
  • Accept-Language: 클라이언트가 선호하는 자연 언어
  • 협상 헤더는 요청시에만 사용
  • Quality Values(q) 값 사용
    • 0~1 클수록 높은 우선순위, 생략하면 1
      • GET /event Accept-Language: ko-KR,ko;q=0.9,en-US;q=0.8,en;q=0.7
    • 구체적인 것이 우선함
      • GET /event Accept: text/*, text/plain, text/plain;format=flowed, */*
    • 구체적인 것을 기준으로 미디어 타입을 맞춘다.
      • Accept: text/*;q=0.3, text/html;q=0.7, text/html;level=1, text/html;level=2;q=0.4, */*;q=0.5
 
 

전송 방식

보통 응답시에만 사용
  • 단순 전송
    • Content-Length - 컨텐트의 길이를 알 수 있을 때
  • 압축 전송
    • Content-Encoding - 압축!
  • 분할 전송
    • Transfer-Encoding: chunked
  • 범위 전송
    • Range: 로 요청
    • Content-Range : 로 응답
 

일반 정보

  • From
    • 유저 에이전트의 이메일 정보
  • Referer
    • 이전 웹 페이지 주소
  • User-Agent
    • 유저에이전트 애플리케이션 정보
  • Server
    • 요청을 처리하는 오리진 서버의 소프트웨어 정보
  • Date
    • 메시지가 생성된 날짜
    •  

특별한 정보

  • Host
    • 요청한 호스트 정보
  • Location
    • 3XX의 응답에 포함하면 자동으로 라디아렉트
    • 201의 응답에 포함하여 새성된 리소스의 경로 정보 전달
  • Allow
    • 허용 가능한 HTTP 메서드
    • 405 Method Not Allowed의 응답에 포함
  • Retry-After
    • 503 Service Unaviable의 응답에 포함
    •  

인증

  • Authorization
    • 클라이언트 인증 정보를 서버에 전달
    • e.g.) Authorization: Basic xxxxxxxxxxxxxxxx,
  • WWW-Authenticate
    • 리소스 접근시 필요한 인증방법 정의
    • 401 Unauthorized 응답과 함께 사용
    •  

쿠키

  • Set-Cookie
    • 서버에서 클라이언트로 쿠키 전달 (응답)
  • Cookie
    • 클라이언트가 서버에서 받은 쿠키를 저장하고, HTTP 요청시 서버로 전달