HTTP 헤더(Header)
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