본문 바로가기
HTTP

[5] HTTP 구조

by onejunu 2021. 3. 20.

 

위 그림은 클라이언트나 서버에서 HTTP/1.x 메세지로 생성하고 1.1 버전을 2버전으로 이진 바이너리 프레임으로 나뉘는 과정을 보여준다.

웹개발자가 손수 HTTP 메세지를 작성하지는 않기 때문에 브라우저나 서버 설정파일이 알아서 HTTP메세지를 작성해 준다.

 

HTTP 요청과 응답의 구조는 서로 매우 닮았다. 그리고 엄청 심플해서 확장성도 좋다.

 

1. 시작라인

-요청

HTTP 메서드가 온다 ( GET, POST , PUT , .... ) 

HTTP 버전을 명시한다.

요청 대상의 URL을 명시한다. 

 

-응답

HTTP 버전

HTTP 상태코드 (200, 400, 500 등)

간단한 이유문구가 온다.

 

2. 헤더

헤더에 들어가는 내용은 아래의 템플릿을 따른다.


field-name: OWS field-value OWS 


OWS : 띄어쓰기를 허용한다는 의미

예를 들어, 

 

Host: www.google.com 

Content-Type: text/html;charset=utf-8

Content-Length: 3444

 

위와 같은 내용은 모두 헤더에 들어간다.

 

3. 공백

공백라인은 CRLF라고하며 필수다

 

4. 메세지 바디

실제 들어가는 데이터가 담긴다.

음성,영상,HTML 파일등등 ....

 

 

더 자세한 내용을 참고하려면

 

 

developer.mozilla.org/ko/docs/Web/HTTP/Messages

 

HTTP 메시지 - HTTP | MDN

HTTP 메시지 HTTP 메시지는 서버와 클라이언트 간에 데이터가 교환되는 방식입니다. 메시지 타입은 두 가지가 있습니다. 요청(request)은 클라이언트가 서버로 전달해서 서버의 액션이 일어나게끔

developer.mozilla.org

 

댓글