HTTP 엔티티
- 웹 브라우저와 웹 서버가 주고받는 실제 데이터
- 예, 웹페이지를 방문할 때, 그 웹페이지의 내용이 HTTP 엔티티
HTTP 요청과 응답에서의 엔티티
- HTTP 요청(Request)
- 클라이언트(웹 브라우저)가 서버에 요청을 보낼 때 사용
- 요청의 엔티티는 주로 서버로 데이터를 전송할 때 사용
- HTTP 응답(Response)
- 서버가 클라이언트(웹 브라우저)에 응답을 보낼 때 사용
- 응답의 엔티티는 주로 웹 페이지나 API 데이터를 클라이언트로 보낼 때 사용합니다.
엔티티의 구성 요소
- 엔티티 헤더(Entity Headers)
- 메타데이터를 포함. 메타데이터는 데이터에 대한 정보. 예를 들어, 데이터의 종류, 크기 등을 설명
- 중요한 엔티티 헤더:
- Content-Type: 데이터의 형식을 나타냅니다. 예를 들어, HTML은 text/html, JSON 데이터는 application/json.
- Content-Length: 데이터의 크기를 바이트 단위로 나타냄
- Content-Encoding: 데이터가 압축되었는지 여부를 나타냄. 예를 들어, gzip으로 압축된 데이터.
- 엔티티 본문(Entity Body)
- 실제 데이터. 예를 들어, HTML 문서의 내용, 이미지, JSON 데이터 등이 될 수 있음
HTTP 요청 예제
POST /submit-form HTTP/1.1
Host: example.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 27
name=John&age=30
- 헤더: Host, Content-Type, Content-Length 등 메타데이터가 포함됩니다.
- 본문: name=John&age=30 이 실제 전송되는 데이터입니다.
HTTP 응답 예제
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 137
<html>
<head>
<title>Response</title>
</head>
<body>
<h1>Hello, World!</h1>
</body>
</html>
- 헤더:
Content-Type
,Content-Length
등 메타데이터가 포함 - 본문:
<html>...</html>
이 실제 웹 페이지의 내용
예) 편지(HTTP 메시지): 누군가에게 보내는 편지라고 할 때,
- 편지 봉투(헤더): 편지 봉투에는 보내는 사람, 받는 사람, 우표 등이 포함. 즉, 편지의 메타데이터
- 편지 내용(본문): 실제 편지에 쓰여 있는 내용이 엔티티 본문