Movatterモバイル変換


[0]ホーム

URL:


  1. 開発者向けのウェブ技術
  2. HTTP
  3. リファレンス
  4. ヘッダー
  5. Transfer-Encoding

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。

View in EnglishAlways switch to English

Transfer-Encoding

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.

Transfer-Encoding ヘッダーは、ネットワーク上のノード間でメッセージを転送する際に使用するエンコード方式を指定します。

警告:HTTP/2 では、Transfer-Encoding ヘッダーの使用は、HTTP/2 の特定の仕様である"trailers" 以外はすべて禁止されています。HTTP/2 以降では、チャンク転送よりも効率的なデータストリーミングの仕組みを自分自身で定義しており、このヘッダーの使用は禁止されています。HTTP/2 でこのヘッダーを使用すると、HTTP/2 プロトコルが使用を禁止しているため、特定のプロトコルエラーが発生する可能性が高いです。

Transfer-Encodingホップバイホップヘッダーであり、リソース自体ではなく、二つのノード間のメッセージに適用されます。ノード間のコネクションが複数ある場合は、それぞれの区間で使用するTransfer-Encoding の値が異なることがあります。コネクション全体を通してデータを圧縮したい場合は、代わりにエンドトゥエンドのContent-Encoding ヘッダーを使用してください。

本文のないHEAD リクエストに対するレスポンスで使われたときは、対応するGET メッセージに適用されるであろう値を示します。

ヘッダー種別リクエストヘッダー,レスポンスヘッダー,コンテンツヘッダー
禁止リクエストヘッダーはい

構文

http
Transfer-Encoding: chunkedTransfer-Encoding: compressTransfer-Encoding: deflateTransfer-Encoding: gzip// カンマで区切って複数の値を並べることができますTransfer-Encoding: gzip, chunked

ディレクティブ

chunked

データはチャンク(塊)の連続で送られます。この場合はContent-Length ヘッダーが省略されます。それぞれのチャンクの先頭に現在のチャンクの長さを 16 進数の形式で追加し、その後で\r\n が続き、チャンク自体ももう一つの\r\n が続きます。最後のチャンクは通常のチャンクですが、長さが 0 であるという点が異なります。この後に、一連のエンティティのヘッダーフィールド(おそらく空)から成るトレイラーが続きます。

compress

Lempel-Ziv-Welch (LZW) アルゴリズムを使用した形式です。この値の名前はこのアルゴリズムを実装している UNIX のcompress プログラムから採られました。特許問題(2003 年に期限切れ)の影響もあり、多くの UNIX ディストリビューションから compress プログラムが消滅したように、今日ではこのコンテンツ符号化方式を使用しているブラウザーはほとんどありません。

deflate

zlib 構造体(RFC 1950 で定義)とdeflate 圧縮アルゴリズム(RFC 1951 で定義)を使用します。

gzip

Lempel-Ziv coding (LZ77) と 32 ビット CRC を使用する形式です。これは元は UNIX のgzip プログラムの形式です。HTTP/1.1 標準は、互換性のために、このコンテンツ符号化方式の別名としてx-gzip を解釈することにサーバーが対応することを推奨しています。

チャンク化の符号化

チャンク化の符号化は、大量のデータをクライアントに送り、リクエストが完了するまでレスポンスの合計の長さが分からない場合に便利です。例えば、巨大な HTML の表をデータベースのクエリーの結果として作成したり、大きな画像を転送したりする場合などです。チャンク化されたレスポンスは以下のようになります。

http
HTTP/1.1 200 OKContent-Type: text/plainTransfer-Encoding: chunked7\r\nMozilla\r\n11\r\nDeveloper Network\r\n0\r\n\r\n

仕様書

Specification
HTTP/1.1
# field.transfer-encoding

ブラウザーの互換性

関連情報

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2026 Movatter.jp