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

View in English Always switch to English

Expect ヘッダー

HTTP の Expect リクエストヘッダーは、リクエスト全体を完全に処理するために、サーバーに必要となる要件があることを示しています。

リクエストに Expect: 100-continue ヘッダーが含まれている場合、サーバーは 100 Continue レスポンスを送信し、リクエストコンテンツの残りの部分を受け入れる準備ができている、あるいは受け入れる能力があることを示します。 クライアントがエラーが発生する可能性が高いと予想している場合、例えば、前回認証情報の有効性を確認せずに状態を変更する操作を送信する場合などには、100 レスポンスを待つことが役立つことがあります。

サーバーが要件に応えられない場合は 417 Expectation Failed レスポンスが返され、それ以外にもその他のステータス(例:クライアントエラーの場合は 4XX ステータス、あるいは追加の処理を必要とせずにリクエストが正常に解決された場合は 2XX ステータスなど、他のステータスが返されます。

Expect ヘッダーを送信するブラウザーはあまりありませんが、一部のクライアント(コマンドラインツール)はデフォルトで送信します。

ヘッダー種別 リクエストヘッダー
禁止リクエストヘッダー はい

構文

http
Expect: 100-continue

ディレクティブ

定義されている要件は一つしかありません。

100-continue

クライアントがこの要求で(おそらく大規模な)メッセージ本体を送信しようとしていることを受信者に通知し、100 Continue 暫定レスポンスを受信することを期待します。

巨大なメッセージ本文

クライアントは Expect ヘッダー付きでリクエストを送信し、メッセージ本文を送信する前にサーバーが応答するのを待ちます。

http
PUT /somewhere/fun HTTP/1.1
Host: origin.example.com
Content-Type: video/h264
Content-Length: 1234567890987
Expect: 100-continue

サーバーはヘッダーを調べ、レスポンスを生成します。このレスポンス内の 100 Continue により、クライアントに対してメッセージ本文を送信するよう指示します。

http
HTTP/1.1 100 Continue

クライアントは、実際のデータを送信することでリクエストを完了します。

http
[PUT リクエストのコンテンツとしての動画データ]

仕様書

仕様書
HTTP Semantics
# field.expect

関連情報