본문 바로가기
CS/Network

[네트워크] HTTP 요청/응답 헤더

by 테리는당근을좋아해 2020. 6. 26.

HTTP 메시지 구성

1) Request

(1) 요청 라인

- 요청 메소드(GET, POST, PUT, DELETE)

- 요청 URL

- HTTP 버전

 

(2) 요청 헤더

 

(3) 요청 바디(Entity)

 

2) Response

(1) 응답 라인

- 버전

- 상태 코드

- 상태 메시지

 

(2) 응답 헤더

 

(3) 응답 바디

-HTML, XML 등

 

 

HTTP 헤더 내 일반 헤더(General Header) 항목

- 요청 및 응답 메시지 모두에서 사용 가능한 일반 목적의 헤더 항목

 

1) Date

- HTTP 메시지를 생성한 일시

 

2) Connection

- 클라이언트와 서버 간 연결에 대한 옵션 설정

 

3) Content-type

- 해당 개체에 포함되는 미디어 타입 정보

- 컨텐츠의 타입 및 문자 인코딩 방식 지정

 

4) Content-length

- 전달되는 해당 개체의 바이트 길이 또는 크기

 

5) Content-language

- 해당 개체와 가장 잘 어울리는 사용자 언어(자연어)

 

6) Content-location

- 해당 개체가 실제 저장되어있는 위치

 

7) Content-Disposition

- 응당 Body를 브라우저가 어떻게 표시할 지 알려주는 헤더

 

8) Content-Security-Policy

- 다른 외부 파일들을 불러오는 경우, 차단할 소스와 불러올 소스 명시

- XSS 공격에 대한 방어 가능

 

9) Location

- redirect될 주소

 

 

 HTTP 헤더 내 요청 헤더(Request Header) 항목

- 요청 헤더는 HTTP 요청 메시지 내에서만 나타나며, 가장 방대

 

1) Host

- 요청하는 호스트에 대한 호스트명 및 포트번호

 

2) User-Agent

- 클라이언트 소프트웨어(브라우저 및 OS) 명칭과 버전 정보

 

3) Cookie

- 서버에 의해 Set-Cookie로 설정된 클라이언트의 쿠키 정보

 

4) Referer

- 바로 직전에 머물렀던 웹 링크 주소

- CSRF 공격을 막기 위한 Referer 검증에 사용됨

 

5) Authorization

- 인증 토큰(JWT/Bearer 토큰 등)을 서버로 보낼 때 사용

 

6) Origin

- POST 요청을 보낼 시, 요청이 어느 주소에서 시작되었는지 표시

- 요청을 보낸 주소와 받는 주소가 다르면 CORS 에러 발생

 

 

HTTP 헤더 내 응답 헤더(Response Header) 항목

1) Server

- 서버 소프트웨어 정보

 

2) Set-Cookie

- 서버 측에서 클라이언트에게 부여하는 쿠키 정보

 

3) Expires

- 리소스 캐시 만료 일시

 

4) Allow

- 해당 엔티티에 대해 서버 측에서 지원 가능한 HTTP 메소드의 리스트

 

5) Access-Control-Allow-Origin

- CORS 요청을 허용하는 도메인

 

'CS > Network' 카테고리의 다른 글

[네트워크] 오류 제어(Error Control)  (0) 2020.06.26
[네트워크] HTTP Request/Response  (0) 2020.06.26
[네트워크] HTTP와 HTTPS  (0) 2020.06.24
[네트워크] TCP(Transport Control Protocol)  (0) 2020.06.24
[네트워크]TCP와 UDP  (0) 2020.06.24

댓글