HTTP request 메시지 형식
HTTP Request Message = RequestHeader + 빈줄 + Requestbody
Header
첫번째줄(start-line)
요청 메서드 + 요청 URI + HTTP 프로토콜 버전
ex) GET/mypic.png HTTP/1.0
POST/ HTTP/1.1
두번째줄 ~ (http headers)
Header 정보들('Header Name:Header Value'형태)
각 줄은 Line Feed(LF)와 Carriage Return(CR)로 구분된다.
빈줄(empty-line)
요청에 대한 모든 메타 정보가 전송되었음을 알린다.
HTTP response 메시지 형식
HTTP Response Message = Response Header + 빈줄 + Response Body
Header
첫번째 줄(status line)
http 프로토콜 버전 + 응답코드 + 응답 메시지
HTTP/1.1 404 NOT FOUND.
두번째줄~ (http headers)
Header 정보들('Header Name:Header Value'형태)
날짜, 웹서버 이름,웹서버 버전,콘텐츠 타입,콘텐츠 길이,케시 제어 방식 등
각줄은 LF(line feed),CR(Carriage Return)으로 구분된다.
빈줄(empty-line)
요청에 대한 모든 메타 정보가 전송되었음을 알린다.
Body
실제 응답 리소스 데이터
201,204와 같은 상태코드를 가진 응답에는 보통 body가 존재하지 않는다.
URI
요청하는 자원의 식별자(규약)
자원을 고유하게 식별하고 위치를 지정할 수 있다.
URI 하위개념으로 URL이 포함된다. URI>URL
URL
특정 웹서버의 특정 자원의 구체적인 위치
자원의 정확한 위치와 접근하기 위한 방법 알려준다.
ex) http://gmlwid4040.github.io/list?page=2
URL: http://gmlwid4040.github.io/list
URI: URL + page=2