Notice
Recent Posts
Recent Comments
Link
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Archives
Today
Total
관리 메뉴

가능세계

[Network] HTTP 헤더 살펴보기 - HTTP 메시지 전송 방식 본문

Blog/Network

[Network] HTTP 헤더 살펴보기 - HTTP 메시지 전송 방식

cona-tus 2023. 9. 11. 10:30

network-icon

1. 전송 방식

HTTP 메시지 전송 방식은 크게 4개로 분류합니다.

 

1-1. 단순 전송

HTTP/1.1 200 OK
Content-Type: text/html;charset=UTF-8
Content-Length: 3423

<html>
  <body>...</body>
</html>

콘텐츠를 한 번에 요청하고 한 번에 받는 단순한 전송 방식입니다.

 

보내는 콘텐츠 길이를 서버에서 알고 있을 때 길이를 지정하여 HTTP 응답의 일부로 전송합니다.

 

e.g. Content-Length: 3243

 

1-2. 압축 전송

HTTP/1.1 200 OK
Content-Type: text/html;charset=UTF-8
Content-Encoding: gzip
Content-Length: 521

lkj123kljoiasudlkjaweioluywlnfdo912u34ljko98udjkl

콘텐츠를 압축해서 전송하는 경우, 클라이언트에서 해석할 수 있도록 어떤 방식으로 압축했는지를 표기해주어야 합니다.

 

e.g. Content-Encoding: gzip

 

1-3. 분할 전송

HTTP/1.1 200 OK
Content-Type: text/plain
Transfer-Encoding: chunked

5
Hello
5
World
0
\r\n

콘텐츠의 용량이 클 때, 분할 전송하여 클라이언트에서 부분만 바로 보여줄 수 있도록 합니다.

이때는 콘텐츠의 길이를 예측할 수 없으므로 콘텐츠 길이 정보를 헤더에 넣지 않도록 합니다.

 

전송이 끝나면 \r\n 로 끝났음을 표기합니다.

 

e.g. Transfer-Encoding: chunked

 

1-4. 범위 전송

HTTP/1.1 200 OK
Content-Type: text/plain
Content-Range: bytes 1001-2000 / 2000

qweqwe1l2iu3019u2oehj1987askjh3q98y

컨텐츠 전체가 아닌 범위를 지정해 요청 받을 때 사용되는 전송 방식입니다.

 

e.g. Content-Range: 1001-2000/2000




참고