ksw_devlog
HTTP 와 HTTP 메시지 구조 본문
HTTP(HyperText Transfer Protocol)
- 웹브라우저와 웹서버가 통신을 할 때 사용하는 통신규칙
- 클라이언트와 서버 사이에서 html, css, js, 이미지 파일 등을 요청하고 응답하면서 주고 받는다.
- 서버와 클라이언트가 서로 알아들을 수 있는 공통의 약속 -> HTTP
- HTTP는 크게 request(요청)와 response(응답)를 위한 메시지로 구분되어 있다
HTTP 특징
- Stateless(무상태성) : HTTP는 특정 상태를 유지하지 않는 특징이 있다.
- Connectionless(비 연결성) : HTTP는 실제로 요청을 주고 받을 때만 연결을 유지하고 응답을 주고나면 서버와의 연결을 끊는다.
HTTP 메시지 구조
요청(Requests)과 응답(Responses)의 구조
1. start line
- start line에는 요청이나 응답의 상태를 나타낸다.
- 항상 첫 번째 줄에 위치한다.
- 응답에서는 status line이라고 부른다.
2. HTTP headers
- 요청을 지정하거나, 메시지에 포함된 본문을 설명하는 헤더의 집합이다.
3. empty line
- 헤더와 본문을 구분하는 빈 줄이 있다. 그 줄을 말한다.
4. body
- 요청과 관련된 데이터나 응답과 관련된 데이터 또는 문서를 포함한다.
- 요청과 응답의 유형에 따라 선택적으로 사용한다.
* start line과 HTTP headers를 묶어 요청이나 응답의 헤드(head)라고 이야기한다. payload는 body라고 이야기한다.