Access-Control-Allow-Headers レスポンスヘッダーは、 Access-Control-Request-Headers を含むプリフライトリクエストへのレスポンスで、実際のリクエストの間に使用できる HTTP ヘッダーを示すために使用されます。

単純ヘッダー, Accept, Accept-Language, Content-Language, Content-Type (但し解釈された値の (引数を除いた) MIME タイプが application/x-www-form-urlencoded, multipart/form-data, text/plain のどれかの場合) は常に利用可能で、このヘッダーで列挙する必要はありません。

このヘッダーは、リクエストに Access-Control-Request-Headers ヘッダーが含まれている時に必要です。

ヘッダー種別 レスポンスヘッダー
禁止ヘッダー名 いいえ

構文

Access-Control-Allow-Headers: <header-name>[, <header-name>]*

ディレクティブ

<header-name>
対応しているリクエストヘッダーの名前です。ヘッダーはコンマで区切って、任意の数のリストにすることができます。

なお、 Accept, Accept-Language, Content-Language, Content-Type (但し、解釈された値 (引数を無視) の MIME タイプが application/x-www-form-urlencoded, multipart/form-data, text/plain のいずれかであるとき) など特定のヘッダーは常に許可されています。これらは単純ヘッダーと呼ばれ、明示的に指定する必要はありません。

カスタムヘッダー

Access-Control-Allow-Headers ヘッダーがどのように見えるかの例です。「単純」ヘッダーに加えて、 X-Custom-Header という名前のカスタムヘッダーがサーバーへの CORS リクエストで対応しています。

Access-Control-Allow-Headers: X-Custom-Header

複数のヘッダー

この例は、複数のヘッダーへの対応を指定するときの Access-Control-Allow-Headers を示しています。

Access-Control-Allow-Headers: X-Custom-Header, Upgrade-Insecure-Requests

プリフライトリクエストの例

Access-Control-Allow-Headers を伴うプリフライトリクエストの例を見てみましょう。

リクエスト

最初にリクエストです。プリフライトリクエストは OPTIONS リクエストで、次のように3つのプリフライトリクエストヘッダー、 Access-Control-Request-Method, Access-Control-Request-Headers, Origin の組み合わせを含みます。

OPTIONS /resource/foo
Access-Control-Request-Method: DELETE
Access-Control-Request-Headers: origin, x-requested-with
Origin: https://foo.bar.org

レスポンス

CORS リクエストが DELETE メソッドを使うことをサーバーが許可した場合、 Access-Control-Allow-Methods レスポンスヘッダーで返信し、そこでは DELETE とともに対応するその他のメソッドのリストが含まれます。

HTTP/1.1 200 OK
Content-Length: 0
Connection: keep-alive
Access-Control-Allow-Origin: https://foo.bar.org
Access-Control-Allow-Methods: POST, GET, OPTIONS, DELETE
Access-Control-Max-Age: 86400

要求されたメソッドに対応していない場合は、サーバーはエラーを返します。

仕様書

仕様書 状態 備考
Fetch
Access-Control-Allow-Headers の定義
現行の標準 初回定義

ブラウザーの対応

機能ChromeEdgeFirefoxInternet ExplorerOperaSafari
基本対応4123.510124
機能Android webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
基本対応2.1 あり あり4123.2 あり

互換性のメモ

関連情報

ドキュメントのタグと貢献者

このページの貢献者: mfuji09
最終更新者: mfuji09,