#author("2023-02-09T15:08:16+09:00","default:k1rou","k1rou") #author("2024-10-19T20:17:32+09:00","default:k1rou","k1rou") *CORS とは [#b3fa1308] **名称 [#kd774754] -Cross-Origin Resource Sharing **概要 [#u884b1b2] -Webサイトの異なるドメインとのデータのやりとりをできるようにする方法。 -[[JSONP]]のセキュリティ上のリスクを低減する技術。 *仕組み([[XMLHttpRequest]]) [#reb7f92c] -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 とは [#d78bb2fb] -「[[Origin]]」参照 *関連サイト [#b2eb5175] -CORS Tester~ https://cors-test.codehappy.dev/ -test-cors.org~ https://www.test-cors.org -CORSにちゃんと対応しているかチェックするcurlコマンド(2020.6.2) - 三蔵開発メモ~ https://sanzo83.hatenablog.com/entry/2020/06/02/160601 *関連用語 [#s08a50ab] -[[Ajax]] -[[JSON]] -[[JSONP]] -[[SOP]] -Same Origin Policy(同一生成元ポリシー) -[[XMLHttpRequest]]