티스토리 뷰
반응형
메시지의 흐름
- HTTP 메시지는 HTTP 애플리케이션 간에 주고받은 데이터의 블록들이다.
- 이 메시지는 클라이언트, 서버, 프락시 사이를 흐른다. '인바운드', '아웃바운드', '업스트림', '다운스트림'은 메시지의 방향을 의미하는 용어다.
메시지는 원 서버 방향을 인바운드 하여 송신된다
- 메시지가 원 서버로 향하는 것은 인바운드 로 이동하는 것이고, 모든 처리가 끝난 뒤에 메시지가 사용자 에이전트로 돌아오는 것을 아웃바운드로 이동하는 것이다.
다운스트림으로 흐르는 메시지
- HTTP 메시지는 강물과 같이 흐른다. 요청 메시지냐 응답 메시지냐에 관계없이 모든 메시지는 다운스트림 으로 흐른다.
메시지의 각 부분
메시지 문법
1. 요청 메시지 형식
<메서드> <요청URL> <버전>
<헤더>
<엔터티 본문>
ex)
GET /test/hi-there.txt HTTP/1.1
Accept : text/*
Host : www.joes-hardware.com
2. 응답 메시지 형식
<버전> <상태코드> <사유 구절>
<헤더>
<엔터티 본문>
ex)
HTTP/1.0 200 OK
Content-Type : text/plain
Content-Length : 19
Hi! I'm a message!
시작줄
요청줄
- 요청 메시지는 서버에게 리소스에 대해 무언가를 해달라고 부탁한다.
- 요청 메시지의 시작줄, 혹은 요청줄에는 서버에서 어떤 동작이 일어나야하는지 설명해주는 메서드와 그 동작에 대한 대상을 지칭하는 요청URL이 들어있다. 또한 요청줄은 클라이언트가 어떤 HTTP 버전으로 말하고 있는지 서버에게 알려주는 HTTP 버전도 포함한다.
- <메서드> <요청URL> <버전>
- 모든 필드는 공백으로 구분된다
응답줄
- 응답 메시지는 수행 결과에 대한 상태 정보와 결과 데이터를 클라이언트에게 돌려준다.
- <버전> <상태코드> <사유 구절>
- 모든 필드는 공백으로 구분된다.
반응형
댓글