HTTP(request, response) Header

박상철·2022년 4월 18일
0

Web

목록 보기
3/4

HTTP(Hyper Text Transfer Protocol)

  • 인터넷에서 데이터를 주고받을 수 있는 통신 규약

Request header

Request Line(요청행), Header, Body로 이루어져 있음

HTTP request method

GET : 지정된 리소스(URI)를 요청
POST : 서버가 클라이언트의 폼 입력 필드 데이터의 수락을 요청. 클라이언트는 서버로 HTTP Body에 Data를 전송
HEAD : 문서의 헤더 정보만 요청하며, 응답데이터(body)를 받지 않는다.
PUT : 메서드는 목적 리소스의 현재 표시를 모두 요청 payload로 변경
DELETE : 지정된 리소스를 삭제
CONNECT : 대상 리소스로 식별된 서버에 대한 터널을 설정
OPTIONS : 대상 리소스에 대한 통신 옵션을 설명
TRACE : 대상 리소스에 대한 경로를 따라 메시지 loop-back test를 수행, 클라이언트가 요청 자원에 도달하기 까지 거쳐가는 프록시나 게이트웨이의 중간 경로부터 최종 수진 서버까지의 경로를 알아낼때 사용.
PATCH : 리소스에 부분 수정 사항을 적용합니다.

Response header

Response Line(응답행), Header, Body로 이루어져 있음

General Header(공통 헤더)

요청과 응답 모두에 적용되지만 바디에서 최종적으로 전송되는 데이터와는 관련이 없는 헤더

Date : 현재시간
Pragma : 캐시제어 , HTTP/1.0에서 쓰던 것으로 HTTP/1.1에서는 Cache-Control이 쓰인다.
Cache-Control : 캐시를 제어할 때 사용
Upgrade : 프로토콜 변경시 사용
Via : 중계(프록시)서버의 이름, 버전, 호스트명
Connection : 네트워크 접속을 유지할지 말지 제어. HTTP/1.1은 kepp-alive 로 연결 유지하는게 default 값
Transfer-Encoding : 사용자에게 entity를 안전하게 전송하기 위해 사용하는 인코딩 형식을 지정

Request Header(요청 헤더)

HTTP 요청에서 사용되지만 메시지의 컨텐츠와 관련이 없는 패치될 리소스나 클라이언트 자체에 대한 자세한 정보를 포함하는 헤더

Host : 요청하려는 서버 호스트 이름과 포트번호
User-agent : 클라이언트 프로그램 정보 ex) Mozilla/4.0, Windows NT5.1
Referer : 현재 페이지로 연결되는 링크가 있던 이전 웹 페이지의 주소
Accept : 클라이언트가 처리 가능한 MIME Type 종류 나열
Accept-charset : 클라이언트가 지원가능한 문자열 인코딩 방식
Accept-language : 클라이언트가 지원가능한 언어 나열
Accept-encoding : 클라이언트가 해석가능한 압축 방식 지정
If-Modified-Since : 여기에 쓰여진 시간 이후로 변경된 리소스 취득. 캐시가 만료되었을 때에만 데이터를 전송하는데 사용
Authorization : 인증 토큰을 서버로 보낼 때 쓰이는 헤더
Origin : 서버로 Post 요청을 보낼 때 요청이 어느 주소에서 시작되었는지 나타내는 값. 경로 정보는 포함하지 않고 서버 이름만 포함
이 값으로 요청을 보낸 주소와 받는 주소가 다르면 CORS 에러가 난다.
Cookie : 쿠기 값 key-value로 표현된다. Set-Cookie 헤더와 함께 서버로부터 이전에 전송됐던 저장된 HTTP 쿠키를 포함

Response Header(응답 헤더)

위치 또는 서버 자체에 대한 정보(이름, 버전)과 같이 응답에 대한 부가적인 정보를 갖는 헤더

Server : 웹서버의 종류
Age : max-age 시간내에서 얼마나 흘렀는지 초 단위로 알려주는 값
Referrer-policy : 서버 referrer 정책을 알려주는 값 ex) origin, no-referrer, unsafe-url
WWW-Authenticate : 사용자 인증이 필요한 자원을 요구할 시, 서버가 제공하는 인증 방식
Proxy-Authenticate : 요청한 서버가 프록시 서버인 경우 유저 인증을 위한 값
Set-Cookie : 서버측에서 클라이언트에게 세션 쿠키 정보를 설정 (RFC 2965에서 규정)

profile
운동하는 개발자

0개의 댓글