一覧に戻る
Lv.2

CORS(クロスオリジンリソース共有)

Cross-Origin Resource Sharing

ブラウザが安全のために違うサイトからのデータ読み込みを制限したり許可したりする仕組み。

簡単に説明すると

CORSっていうのは、ブラウザが自分が今見ているサイトとは別の場所にあるデータを読み込むための仕組みのことだよ。 通常、ブラウザは安全のために今開いているサイト以外のデータを勝手に読み込まないように制限しているんだ。 でも、このCORSというルールを使うことで、特定の相手からだけはデータのやり取りを許可できるようになるんだよ。

名前のヒミツ

CORS(コルス)。Cross(交差する)、Origin(場所・起源)、Resource(データなどの資源)、Sharing(共有)の頭文字を合わせた言葉なんだ。日本語では「クロスオリジンリソース共有」とも呼ばれるよ。ブラウザが違うサイト同士でデータをやり取りする時のルールを決めるためのものなんだ。

くわしく見てみよう!

CORSとは、ウェブブラウザが別のサーバーにあるデータを安全に読み込むための仕組みのことだよ。
インターネットの世界では、悪意のあるサイトが勝手に他人のデータを盗み見ないように、基本的には同じ場所にあるデータしか扱えないという決まりがあるんだ。

この厳しい決まりを同一生成元ポリシーと呼ぶけれど、これだけだと他のサイトの便利な機能を使いたい時に困ってしまうんだよ。
そこでCORSというルールをあらかじめ決めておくことで、例外的に他の場所からのデータ取得を許可できるようになるんだ。

具体的な仕組みとしては、ブラウザがサーバーとの通信の中で「許可」に関する情報をチェックするんだよ。
ブラウザがリクエストを送ると、サーバー側が「このサイトからのアクセスなら許可するよ」という専用の返事(ヘッダー)を返すんだ。
これを見てブラウザは、そのデータを表示しても安全かどうかを判断するよ。
また、特定のリクエストを送る場合には、事前に「アクセスしてもいい?」と確認の通信(プリフライトリクエスト)を行うこともあるんだ。

ざっくり言うと、ブラウザとサーバーの間で「許可された相手かどうか」を確認し合うためのルールだね。
これがあるおかげで、色々なサイトが提供している情報を、セキュリティを守りながら組み合わせて使うことができるんだよ。