728x90
이 글은 공부를 하면서 알게 된 내용들을 기록하는 글 입니다. 오류나 고쳐야 할 사항들이 있다면 지적 부탁드립니다!
⛅️ 클라이언트 - 서버 구조
클라이언트-서버는 Request(요청) - Reponse(응답) 구조를 가지고 있다.
클라이언트가 서버에 원하는 Request(요청)을 보내고 Response(응답)을 기다린다.
서버는 클라이언트의 Request에 대한 결과를 만들어서 Response(응답)을 한다.
⛅️ HTTP message의 구조
[start-line 시작 라인]
http request message : request-line | |
형식 | method SP request-target SP HTTP-version CRLF |
method | HTTP 메서드: 서버가 수행해야 할 동작 지정 ex) GET, POST, PUT, DELETE |
request-target | absolute-path[?query]: 절대 경로(/로 시작), 쿼리문 ex) /search?q=hello&hl=ko |
HTTP-version | HTTP의 버전 ex) HTTP/1.1 |
http response message : status-line | |
형식 | HTTP-version SP status-code SP reason-phrase CRLF |
HTTP-version | HTTP의 버전 ex) HTTP/1.1 |
status-code | HTTP 상태 코드: 요청 성공, 실패 등을 나타냄 ex) 200 OK, 400 Client Error |
reason-phrase | 사람이 이해할 수 있는 짧은 상태 코드 설명 글 |
[header 헤더]
● HTTP 전송에 필요한 모든 부가정보를 담는 곳
메세지 바디의 크기, 압축 방법, 인증 등...
● 형식 field-name:OWS(띄어쓰기 허용) field-value
● 필요 시 임의의 헤더를 추가할 수 있다.
[empty-line 공백라인 CRLF]
header와 message body 사이에 넣는 공백 라인
[HTTP message body]
● 실제 전송할 데이터를 담는 공간
● html, json, 이미지, 영상 등 byte로 표현할 수 있는 모든 데이터는 이 곳에 담아서 전송 가능
⛅️HTTP Request message : HTTP 요청 메세지
HTTP Request message는 주로 start-line, header, empty-line으로 이루어져 있다.
Request message도 message body를 가질 수 있다.
⛅️ HTTP Response message : HTTP 응답 메세지
HTTP Response message는 start-line, header, empty-line, message body로 이루어져 있다.
728x90