1. ホーム
  2. cors

[解決済み] Access-Control-Expose-Headersはなぜ必要なのですか?

2022-03-13 01:17:03

質問

なぜこれが追加されたのか、具体的なセキュリティ上の理由を知りたかったのです。corsを実装しているときに、返されるすべてのヘッダーを見ることができましたが、javascript経由でアクセスすることができなかったので、WTHのような瞬間でした...

解決方法は?

CORSは、CORS以前の同一オリジンのみの世界での前提を崩さないように実装されています。

CORS以前の世界では、クライアントはクロスオリジンリクエストを引き起こすことができましたが(例えば、スクリプトタグを介して)、応答ヘッダーを読むことはできませんでした。

CORS がこの前提を崩さないようにするため、CORS 仕様では、クライアントがこれらのヘッダを読み取るための明示的な許可をサーバーが与えることを要求しています。 Access-Control-Expose-Headers ヘッダー)。こうすることで、不正なCORSリクエストは、CORS以前の世界と同じように動作します。