HTTP(Hypertext Transfer Protocol)는 인터넷에서 데이터를 주고받을 수 있는 프로토콜입니다. HTTP는 클라이언트와 서버 사이에서 요청(request)과 응답(response)을 전송하여 인터넷에서 정보를 공유하는 데 사용됩니다.
HTTP 메세지는 HTTP 요청과 응답에서 사용되는 데이터 패킷입니다. 이 메세지는 클라이언트와 서버 사이에서 전송됩니다. HTTP 메세지는 일반적으로 두 부분으로 구성됩니다.
HTTP 요청 메세지의 구조는 다음과 같습니다.
Request-Line (HTTP Method + Request Target + HTTP Version)
Headers
Body (Optional)
- Request-Line : HTTP 요청의 첫 번째 라인입니다. HTTP Method(GET, POST, PUT, DELETE 등)과 Request Target(요청 URI), HTTP Version이 포함됩니다.
- Headers : 요청에 대한 부가적인 정보를 포함합니다. 일반적으로 키-값 쌍으로 이루어져 있으며, 요청의 내용, 요청한 클라이언트의 정보, 캐시 설정 등의 정보를 포함합니다.
- Body : 요청 메세지의 바디는 Optional 항목입니다. POST와 같은 메소드로 요청을 할 때, 전송할 데이터를 포함합니다.
HTTP 응답 메세지의 구조는 다음과 같습니다.
Status-Line (HTTP Version + Status Code + Reason Phrase)
Headers
Body (Optional)
- Status-Line : HTTP 응답의 첫 번째 라인입니다. HTTP Version, Status Code(200, 404, 500 등), Reason Phrase(응답에 대한 간단한 설명)가 포함됩니다.
- Headers : 응답에 대한 부가적인 정보를 포함합니다. 일반적으로 키-값 쌍으로 이루어져 있으며, 응답의 내용, 응답한 서버의 정보, 캐시 설정 등의 정보를 포함합니다.
- Body : 응답 메세지의 바디는 Optional 항목입니다. 요청한 리소스에 대한 실제 데이터를 포함합니다.
HTTP 메세지의 구조를 이해하면, 클라이언트와 서버 간의 통신을 더욱 이해하기 쉬워집니다.
'개발자가 되기 위한 꿀팁 및 정보' 카테고리의 다른 글
[기술면접준비] this의 동작원리와 용법, 그리고 예시 (0) | 2023.03.31 |
---|---|
[기술면접준비] position의 정의와 사용방법 (0) | 2023.03.30 |
[기술면접준비] 프레임워크와 라이브러리 차이점 (0) | 2023.03.29 |
[기술면접준비] 캐시의 장단점과 프론트엔드에서 사용영역 (0) | 2023.03.29 |
[기술면접준비] parameter(매개변수)와 argument(인수)의 차이 (0) | 2023.03.28 |