-
HTTP Request / Response 구조💻 computer science/🌐 network 2025. 8. 6. 18:02
🚀 HTTP

HTTP는 클라이언트와 서버 사이에 데이터를 주고받는 데 사용되는 통신 규약입니다.
웹에서 가장 널리 사용되며 사람이 읽을 수 있는 텍스트 기반의 형식을 사용합니다.
HTTP 통신은 요청(Request) 과 응답(Response) 으로 이루어집니다.
📬 HTTP Request
GET / HTTP/1.1\\r\\n Host: developer.mozilla.org\\r\\n Accept-Language: fr\\r\\n- 사람이 읽을 수 있는 형태
\r\n- 줄바꿈을 표현하는 내용이 포함되어 있다.

1️⃣ Start line
HTTP Method 클라이언트가 수행하려는 작업 (GET, POST 등) Path 요청한 리소스의 경로(URL) - 전체 URL에서 프로토콜, 도메인, 포트를 제외한 부분 Protocol Version HTTP 프로토콜 버전 2️⃣ 헤더 (Headers)
요청에 대한 추가 정보(메타데이터)를 담고 있습니다.
- 키(Key)와 값(Value)의 쌍
Host: 요청 대상 서버의 도메인 이름을 명시Content-Type: 요청 본문(Body)에 담긴 데이터의 형식Accept-Language: 클라이언트가 선호하는 언어를 명시3️⃣ 본문 (Body)
POST나PUT과 같이 서버에 데이터를 보내는 요청에 포함됩니다.- 실제 전송할 메시지 내용이나 데이터(예: JSON, XML)
GET요청에는 보통 본문이 없습니다.📪 HTTP Response
HTTP/1.1 200 OK Date: Sat, 09 Oct 2010 14:28:02 GMT Server: Apache Last-Modified: Tue, 01 Dec 2009 20:18:22 GMT ETag: "51142bc1-7449-479b075b2891b" Accept-Ranges: bytes Content-Length: 29769 Content-Type: text/html <!doctype html>… (here come the 29769 bytes of the requested web page)- 마찬가지로 \r\n 으로 줄바꿈

1️⃣ Start line
Protocol version HTTP 프로토콜 버전 Status code 요청의 성공 또는 실패 여부와 그 이유를 나타내는 숫자 코드 Status message 응답 상태를 간결히 설명해주는 부분 2️⃣ 헤더 (Headers)
응답에 대한 추가 정보(메타데이터)를 담고 있습니다.
3️⃣ 본문 (Body)
서버가 클라이언트에게 전달하려는 실제 데이터입니다.
- HTML 페이지, 이미지, JSON 데이터 등
204 No Content와 같은 응답에는 본문이 없습니다.'💻 computer science > 🌐 network' 카테고리의 다른 글
HTTP Redirect (0) 2025.09.24 웹 서버와 WAS (0) 2025.09.17 소켓 프로그래밍 (1) 2025.08.06 네트워크 통신 방식 - 유니캐스트, 브로드캐스트, 멀티캐스트 (0) 2025.08.06 HTTPS (0) 2022.10.09