클라이언트, 서버의 통신은 HTTP 메세지를 주고 받는 형식이다.
각각 요청 HTTP 메세지, 응답 HTTP 메세지로 나뉘며, 이때 메세지별 세부적인 정보 차이가 있다.
왜 HTTP로 통신하냐는 질문에는 HTTP 메시지도 매우 단순하다는 이유가 대답이 된다.
크게 성공하는 표준 기술은 단순하지만 확장 가능한 기술이라 한다.
HTTP 메세지는
- 시작 라인
- HTTP 헤더
- 공백 라인
- HTTP 바디
HTTP 메세지의 형태
출처 : https://swchloe.tistory.com/2
시작 라인
- 요청
- HTTP 메서드 ( GET, POST, PUT, DELETE )
- 요청 대상 ( 세부 url )
- HTTP Version
- 응답
- HTTP Version
- HTTP 상태 코드 : 요청의 성공, 실패 등을 나타낸다 ( 200, 300, 400, 500 )
- 이유 문구: 상태에 대한 이유를 사람이 이해할 수 있게 짧게 작성한다.
공백 라인
공백의 한 줄이 꼭 들어간다.
HTTP 헤더
- HTTP 전송에 필요한 모든 부가정보
- ex) 메시지 바디의 내용, 메시지 바디의 크기, 압축, 인증, 요청 클라이언트(브라우저) 정보,
서버 애플리케이션 정보, 캐시 관리 정보 등
HTTP 바디
- 제 전송할 데이터
- HTML 문서, 이미지, 영상, JSON 등등 byte로 표현할 수 있는 모든 데이터 전송 가능