at backyard

Color my life with the chaos of trouble.

policy: The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'. というエラーの対処法

下記のようなエラーが出て、これを解決するために諸々検証していたのでメモ。

policy: The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'.

前提

JSONファイルを配信しているだけのサーバにアクセスした際に、そのファイルからのレスポンスに下記のようなヘッダーを返していた。

Access-Control-Allow-Credentials: true

そして Access-Control-Allow-Origin には下記のように * を指定していた。

Access-Control-Allow-Origin: *

credential modeがincludeの際に *(ワイルドカード)は使えない

だが、このような組み合わせにするとタイトルに書いたエラーが表示される。

今回リクエストのcredential modeはincludeにしていたが、そのような場合に * は使えない、というのがエラーの内容だ。

というわけで、

Access-Control-Allow-Origin: <オリジン>

に書き換えることで無事にエラーは解消したので、備忘録として残しておく。

参考にしたドキュメント

developer.mozilla.org