CORS Access-Control-Allow-Headers ワイルドカードは無視されますか? 質問する

CORS Access-Control-Allow-Headers ワイルドカードは無視されますか? 質問する

Chrome を使用してクロスドメイン CORS リクエストを正しく機能させるのに問題があります。

リクエストヘッダー:

Accept:*/*
Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8
Access-Control-Request-Headers:origin, content-type
Access-Control-Request-Method:POST
Connection:keep-alive
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/537.4 (KHTML, like Gecko) Chrome/22.0.1229.94 Safari/537.4

レスポンス ヘッダー:

Access-Control-Allow-Headers:*
Access-Control-Allow-Origin:*
Allow:GET, POST, OPTIONS
Content-Length:0
Date:Tue, 30 Oct 2012 20:04:28 GMT
Server:BaseHTTP/0.3 Python/2.7.3

エラー:

XMLHttpRequest cannot load domain. Request header field Content-Type is not allowed by Access-Control-Allow-Headers.

オプション要求を処理する Python コードは次のとおりです。

self.send_response(200)
self.send_header('Allow', 'GET, POST, OPTIONS')
self.send_header('Access-Control-Allow-Origin', '*')
self.send_header('Access-Control-Allow-Headers', '*')
self.send_header('Content-Length', '0')
self.end_headers()

Access-Control-Allow-Originワイルドカードが無視されているようですね?

ベストアンサー1

Access-Control-Allow-Headersヘッダー内のワイルドカードのサポートは生活水準の向上2016 年 5 月現在、すべてのブラウザでサポートされているわけではありません。まだ実装されていないブラウザでは、完全一致である必要があります。https://www.w3.org/TR/2014/REC-cors-20140116/#access-control-allow-headers-response-header

多数のヘッダーが予想される場合は、Access-Control-Request-Headersヘッダーの値を読み取り、その値をヘッダーにエコーバックすることができますAccess-Control-Allow-Headers

おすすめ記事