사용자가 HTTP요청을 하게 되면 헤더와 바디를 주고 받습니다.
https://www.naver.com/ 를 요청할 때 받게되는 리소스 중 하나인 count.nhn를 보면 다음과 같은 부분에서 response탭에 있는 컨텐츠를 body, 그리고 headers에 있는 컨텐츠를 header라고 합니다.
https://www.naver.com/my/noti/count.nhn
바디는 본문이라고 할 수 있으며 서버에서 보내고자 하는 컨텐츠 본문인 JSON, html, image 등이 담깁니다. 헤더는 바디를 설명하는 정보를 포함해서 여러가지 정보가 담긴
정보묶음입니다. 헤더는 콜론 ':' 으로 서로 구분되는 key - value형태로 설정됩니다.
HTTP요청을 할 때 3가지의 헤더인 일반헤더, 요청헤더, 응답헤더가 자동으로 생깁니다.
여기서 서버에서 설정하는 헤더를 응답헤더, 클라이언트에서 설정한 헤더를 요청헤더라고
합니다.
요청한 URL, 요청메서드, 해당 자원을 요청할 때 해당자원의 출처를 나타내는 URL을
노출시킬지 말지를 정하는 보안정도가 설정되어있는 Referrer Policy 등이 들어갑니다.
요청 헤더는 클라이언트가 서버에 요청할 때 클라이언트가 설정하는 또는 자동으로 설정되는 헤더를 말합니다. 요청 헤더에는 메서드, 클라이언트의 OS, 브라우저 정보 등이 담깁니다.
응답헤더는 서버가 클라이언트에게 응답을 보낼 때 설정하는 또는 자동으로 설정되는
헤더를 말합니다. 응답 헤더는 서버의 소프트웨어 정보 등이 담깁니다. 예를 들어 nginx를 프록시서버로 두었다면 해당 정보가 표기됩니다. 하지만 대부분의 서버는 일반적으로 해커가 서버에서 어떤 소프트웨어가 사용되고 있는지 알기 어렵게 하기 위해 서버 정보를 숨깁니다. response Headers의 server : NWS 라고 되어있는데 이는 Naver Web Server를 의미합니다. gzip 압축 알고리즘을 쓰는 것만 나와있을 뿐 자세하게 표기가 안되는 것을 볼 수 있습니다.