このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。
HEAD リクエストメソッド
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月.
**HEAD**は HTTP のメソッドで、リソースのメタデータをヘッダーの形で要求します。このヘッダーは、代わりにGET メソッドが使用された場合にサーバーが送信するであろうものです。この方法は、URL が大量のダウンロードを生成する可能性がある場合に使用できます。例えば、HEAD リクエストでContent-Length ヘッダーを読み取り、ファイルサイズを確認した後、GET でファイルをダウンロードできます。
HEAD リクエストへのレスポンスが、キャッシュされた URL のレスポンスが古くなったことを示した場合、GET リクエストが行われなくても、キャッシュされたコピーは無効化されます。
警告:HEAD リクエストへのレスポンスに本体が含まれる場合、そのレスポンス本体は無視されなければなりません。誤った本文を記述する可能性がある表現ヘッダーは、同様のGET リクエストで受け取るであろうレスポンスを記述していると仮定します。
In this article
構文
HEAD <request-target>["?"<query>] HTTP/1.1<request-target>Hostヘッダーで提供される情報と組み合わせたときの、リクエストのターゲットリソースを識別します。これは元のサーバーへのリクエストにおいては絶対パス(/path/to/file.htmlなど)であり、プロキシーへのリクエストにおいては絶対 URL(http://www.example.com/path/to/file.htmlなど)です。<query>省略可疑問符
?で始まるオプションのクエリー成分。多くの場合、key=valueの組の形で識別情報を保持するために使用されます。
例
>リソースのメタデータの受け取りに成功
次のcurl コマンドはexample.com に対してHEAD リクエストを作成します。
curl --head example.comこれはGETリクエストに相当しますが、サーバーはレスポンスにメッセージ本文を記載すべきではありません。これにより、次のような HTTP リクエストが作成されます。
HEAD / HTTP/1.1Host: example.comUser-Agent: curl/8.6.0Accept: */*サーバーはヘッダーのみで構成される200 OK レスポンスを返します。このレスポンスは実質的にリソース自体ではなくリソースを記述するメタデータです(簡潔化のため、この例では一部のキャッシュヘッダーは除外されています)。
HTTP/1.1 200 OKContent-Type: text/html; charset=UTF-8Date: Wed, 04 Sep 2024 10:33:11 GMTContent-Length: 1234567仕様書
| Specification |
|---|
| HTTP Semantics> # HEAD> |