CORS JSON 設定

作成した cors-rules.json ファイルを編集して CORS を構成します。

JSON ファイルは、2 つのプロパティを持つ単一の JSON オブジェクトを含んでいる必要があります。

version {string} "1.0" に等しいことが必要です。

rules {array<object>} 有効な CORS ルールの配列であることが必要です。

ルールオブジェクトの構文は、次のように定義されます。

resource {object} (必須)

要求 URL を持つルールを照合する方法を説明します。以下のプロパティーをサポートします。
  • path {string} (必須) リソースパス。startsWith または exact の値がない場合、CORS フィルターは、この値を含むパスを持つすべての要求を照合します。
  • startsWith {boolean} (オプション) true の場合、CORS フィルターは、 path の値で始まるパスを持つ要求のみを照合します。
  • exact {boolean} (オプション) true の場合、CORS フィルターは、path の正確な値であるパスを持つ要求のみを照合します。startsWithexact のプロパティーは相互に排他的です。

allowOrigins {string | array<string>} (必須)

このリソースに対して許可されるオリジンのリストを指定します。各要素が許可されたオリジン・ホスト名である文字列の配列を指定します ("http://this.example.com" など)。これらの要素の 1 つに正確に一致するオリジンのみが許可されます。たとえば、 "http://this.example.com""https://this.example.com""http://this.example.com:8080"を指定すると、これらのすべての URL を通じてアクセスを許可できます。

"*" の値は、任意のオリジンを許可します。これを使用することは推奨されません。

allowMethods {array<string>} (必須)

このリソースとオリジンに対して許可されるメソッドのリストを指定します。「クロスオリジン・リソース共有に関する W3C 勧告」の「Access-Control-Allow-Methods」を参照してください。

allowCredentials {boolean} (オプション)

true の場合、CORS フィルターでは、このリソースとオリジンの資格情報が許可されます。「クロスオリジン・リソース共有に関する W3C 勧告」の「Access-Control-Allow-Methods」を参照してください。

exposeHeaders {array<string>} (オプション)

XHR クライアントに公開する応答ヘッダーのリストを指定します。このプロパティを使用すると、CORS フィルターは、実際の (プレフライトではない) 要求への応答に Access-Control-Expose-Headers ヘッダーを追加します。最終的には、XHR クライアントにヘッダーを公開するのはブラウザーです。「クロスオリジン・リソース共有に関する W3C 勧告」の「Access-Control-Allow-Methods」を参照してください。