Web技術の基礎
ブラウザの同一オリジンポリシーで、https://www.example.com/app/index.html と同じオリジンとみなされるURLはどれか。
- Ahttps://www.example.com/data/list.json
- Bhttp://www.example.com/app/data.json
- Chttps://api.example.com/app/data.json
答えと解説を見る
正解:A. https://www.example.com/data/list.json
オリジンは、スキーム、ホスト名、ポート番号の3つの組で決まり、3つがすべて同じときに同一オリジンとみなされます。パスは関係しないので、/data/list.json は同じオリジンです。同一オリジンポリシーにより、ページのJavaScriptは、ほかのオリジンから受け取った応答の中身を、原則として読み取れません。これで、利用者がログインしているほかのサイトの情報を、悪意のあるページのスクリプトが読み出すことを防いでいます。
- A. 正しい。スキーム、ホスト名、ポート番号(443)が同じで、パスだけが違います。
- B. スキームがhttpで違い、既定のポート番号も80になるので、別のオリジンです。
- C. ホスト名が api.example.com で違うので、同じドメインの下でも別のオリジンです。