ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • HTTP 헤더
    Web 2022. 7. 6. 15:52

    HTTP 헤더란? 

     

    클라이언트, 서버가 http 전송(요청, 응답)하는데 필요한 모든 부가정보를 담는다.

     

    표현: http를 통해 보낼 실제 데이터

    표현 헤더: 표현 데이터를 해석할 정보를 제공하는 데이터

     

    Representation(표현) = Representation Metadata(표현 메타데이터) + Representation Data(표현 데이터)

     

     

    표현 헤더의 종류

     

    • Content-type: 표현 데이터 형식
    • Content-Encoding: 표현 데이터 압축 방식
    • Content-Language: 표현 데이터의 자연 언어
    • Content-Length: 표현 데이터 길이

    ...

    Content Negotiation
    HTTP
    에서, 컨텐츠 협상이란 동일한 URI에서 리소스의 서로 다른 버전을 서브하기 위해 사용되는 메커니즘으로, 사용자 에이전트가 사용자에게 제일 잘 맞는 것이 무엇인지(예를 들어, 문서의 언어, 이미지 포맷 혹은 컨텐츠 인코딩에 있어 어떤 것이 적절한지)를 명시할 수 있습니다.

     

    협상과 우선순위

     

    1. Quality Value(q)

    2. 구체적인 것이 우선

        

    • Accept: text/*, text/plain, text/plain;format=flowed, */*
    
    
    
    1. text/plain;format=flowed
    
    2. text/plain
    
    3. text/*
    
    4. */*

     

    전송 방식

    • 단순 전송
    • 압축 전송: gzip 등으로 압축해 전송
    • 분할 전송: chunk(덩어리) 단위로 전송
    • 범위 전송: 지정된 byte 범위 전송

     

    일반 정보

     

    • Form: 유저 에이전트의 이메일
    • Referer: 이전 웹페이지 주소 - 유입 경로 분석에 쓰임
    • User-Agent: 클라이언트의 애플리케이션 정보
    • Server: 요청 처리 Origin 서버 정보
    • Date: 메시지의 발생 시간, 날짜

     

     

    특별한 정보

      • Host: 요청한 호스트 정보

    • Location: 페이지 redirection
      >> 3XX 응답 결과에 Location 헤더가 있으면, 자동으로 이동한다.
    • Allow: 허용 가능한 http 메서드
      >> 405(Method Not Allowed)에서 포함함.
    • Retry-After: 유저 에이전트가 다음 요청을 허가할때까지 기다려야 하는 시간
      >> 서비스가 언제까지 사용불가인지 알려준다.

     

    쿠키

    http는 stateless 프로토콜이라서 사용자의 로그인 이후 사용자를 기억하지 못한다.
    » 모든 요청에 사용자 정보를 포함하면? 보안에 문제, 브라우저 재시작 시 정보는 사라진다.

     

    • set-cookie: 서버→클라이언트 쿠키 전달
    • Cookie: 클라이언트가 서버에서 받은 쿠키를 저장하고, http 요청시 서버로 전달

     

    로그인 이후 페이지 접근 시 쿠키의 사용

     

    이후 다른 페이지의 모든 요청에 쿠키가 자동으로 포함된다. 

     

     

    'Web' 카테고리의 다른 글

    캐시와 조건부 요청  (0) 2022.07.06
    Http 상태 코드  (0) 2022.07.06
Designed by Tistory.