HTTP
HTTP의 특징
- 클라이언트/서버 모델을 따른다.
- 클라이언트/서버 모델에 대한 설명 찾아서 첨부하기
HTTP 메세지
- 요청 메세지(Request Message) : Client -> Server
- 응답 메세지(Response Message) : Server -> Client
Request Message
https://developer.mozilla.org/en-US/docs/Web/HTTP/Overview
- Request는 시작 줄, 헤더 영역, 바디 영역으로 구분
- 시작 줄 : 클라이언트가 따르는 프로토콜의 버전, 처리에 필요한 리소스의 위치(Path), 처리 방식(Method)
- 헤더 영역은 한 줄에 key-value 쌍으로 구성
- 바디 영역은 method와 헤더 정보에 따라 있을 수도 있고, 없을 수도 있음
Request Method
URL
Response Message
https://developer.mozilla.org/en-US/docs/Web/HTTP/Overview
- 시작줄, 헤더 영역, 바디 영역의 구성은 요청 메세지와 같음
- 다만 시작줄에서 프로토콜 버전이 앞에 오고, Path와 Method 대신에 Status code와 Status message가 온다
- Status code와 message는 1:1로 대응되는 한 쌍이며, 메시지는 큰 의미가 없고 코드를 읽기 쉽게 문자로 기술한 것
Response status codes
https://42seoul.gitbook.io/webserv/or-response
- 헤더는 요청에만 쓰이는 헤더, 응답에만 쓰이는 헤더, 양쪽 모두 쓰이는 헤더, 특정 상태 코드와만 같이 쓰이는 헤더 등이 있다.