CORS のバックアップ(No.4)


CORS とは

名称

  • Cross-Origin Resource Sharing

概要

  • Webサイトの異なるドメインとのデータのやりとりをできるようにする方法。
  • JSONPのセキュリティ上のリスクを低減する技術。

仕組み(XMLHttpRequest

  • Access-Control-Allow-Originヘッダ
    • クロスオリジンでデータを提供する側が、HTTPヘッダにAccess-Control-Allow-Originヘッダを付加する。
  • プリフライトリクエスト
    • pre-flight request
    • 同一生成元としての条件を満たさなかった場合に、Webブラウザが送信するHTTPリクエスト
    • リクエスト:1.Access-Control-Request-Method、2.Access-Control-Request-Headers、3.Origin
    • 応答:1.Access-Control-Allow-Method、2.Access-Control-Allow-Headers、3.Access-Control-Allow-Origin
  • Cookieの送信
    • デフォルトは送信しない。
    • 送信する場合は、リクエストでXMLHttpRequestの withCredentialsプロパティにtrueを設定する。
    • 応答:Access-Control-Allow-Credentials(true)

Cross-Origin とは

関連用語