부트캠프

HTTP 헤더(Header)

hunm719 2023. 2. 24. 20:59
1.HTTP 헤더(Header)

 -HTTP 메시지(Messages)의 구성 요소 중 하나
 -클라이언트의 요청이나 서버의 응답에 포함되어 부가적인 정보를 HTTP 메시지에 포함할 수 있도록 함
 
 -HTTP 헤더의 사용 목적(HTTP 헤더에 포함되어 있는 부가적인 정보를 어디에 사용할지)
  [1]클라이언트와 서버 관점에서의 대표적인 HTTP 헤더 예시
   ● 클라이언트와 서버의 관점에서 내부적으로 가장 많이 사용되는 헤더 정보로 'Content-Type'이 있음
    'Content-Type' 헤더 정보는 클라이언트와 서버가 주고 받는 HTTP message body의 데이터 형식을 알려주는 역할
    클라이언트와 서버는 'Content-Type'이 명시된 데이터 형식에 맞는 데이터들을 주고 받음

 


  [2]개발자들이 직접 실무에서 사용하는 대표적인 HTTP 헤더 예시
   (1)Authorization
     클라이언트가 적절한 자격 증명을 가지고 있는지를 확인하기 위한 정보
     클라이언트와 서버 간의 로그인(사용자 ID/비밀번호) 인증에 통과한 클라이언트들은 ‘Authorization’ 헤더 정보를 기준으로 인증에 통과한 클라이언트가 맞는지 확인하는 절차를 거침

   (2)User-Agent
     여러가지 유형의 클라이언트가 하나의 서버 애플리케이션에 요청을 전송하는 경우에 사용
     ‘User-Agent’ 정보를 이용해서 모바일 에이전트에서 들어오는 요청인지 모바일 이외에 다른 에이전트에서 들어오는 요청인지 등을 구분해서 처리할 수 있음

 


  [3]HTTP Request 헤더 정보 얻기
    @RequestHeader 애너테이션을 이용해 헤더 정보를 얻을 수 있음
    HttpServletRequest 또는 HttpEntity 객체로 헤더 정보를 얻을 수 있음

 


  [4]HTTP Response 헤더 정보 추가
    ResponseEntity와 HttpHeaders를 이용해 헤더 정보를 추가할 수 있음
    HttpServletResponse 객체를 이용해 헤더 정보를 추가할 수 있음

 

 

 

 

 

 

 

-내용 출처 : code states