CORSとは

概要

CORS(コース)とは、
Webブラウザが異なるオリジン(ドメイン・プロトコル・ポートの組み合わせ)間で
リソースを共有できるようにする仕組みです。
通常、ブラウザは「セキュリティ上の制約」で異なるオリジンへのアクセスを制限します
(同一オリジンポリシー)。
この制約を緩和して安全に通信できるようにするのがCORSです。

正式名称

Cross-Origin Resource Sharing(クロス・オリジン・リソース・シェアリング)

略称

CORS(コース)

特徴

  • 異なるオリジン間での通信を制御する仕組み
  • HTTPレスポンスヘッダ(例:Access-Control-Allow-Origin)で許可を指定
  • APIや外部リソースの利用時によく登場
  • 不正なリクエストを防ぐため、ブラウザが自動で制御
  • サーバー側で正しく設定しないと通信が失敗する

具体例

例1:API呼び出し

  • 自サイト(https://example.com)から外部API(https://api.example.org)を呼び出す場合
  • サーバーがレスポンスに以下を含めればアクセス可能:
Access-Control-Allow-Origin: https://example.com

例2:エラーが出るケース

  • 許可設定がされていないAPIにアクセスすると、ブラウザで以下のようなエラーが出る
Access to fetch at 'https://api.example.org' from origin 'https://example.com'

関連用語

用語解説
同一オリジンポリシー(Same-Origin Policy)異なるオリジン間でのアクセスを制限する基本ルール
プリフライトリクエスト
(Preflight Request)
実際のリクエスト前にOPTIONSメソッドで許可を確認する仕組み
HTTPヘッダAccess-Control-Allow-Origin/Access-Control-Allow-Methods などが
CORS設定に使われる
API外部サービスとの通信でCORS設定が必要になる代表例

タイトルとURLをコピーしました