가능세계
[Network] HTTP 헤더 살펴보기 - HTTP 메시지 전송 방식 본문
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
참고
'Blog > Network' 카테고리의 다른 글
[Network] HTTP 헤더 살펴보기 - 인증(Authentication) (0) | 2023.09.11 |
---|---|
[Network] HTTP 헤더 살펴보기 - 콘텐츠 협상(Contents Negotiation) (0) | 2023.09.11 |
[Network] HTTP 헤더 살펴보기 - 요청 헤더와 응답 헤더 (0) | 2023.09.11 |
[Network] HTTP 헤더 살펴보기 - 표현 헤더(Representation Header) (2) | 2023.09.11 |
[Network] HTTP 상태 코드(HTTP Status Code) 정리하기 (0) | 2023.09.11 |