ドメイン がありjs.mydomain.com
、それが IP アドレスを指し、別のドメインrequests.mydomain.com
が別の IP アドレスを指しているとします。からダウンロードした.js
ファイルはjs.mydomain.com
に Ajax リクエストを送信できますrequests.mydomain.com
か?
最新のブラウザーは、同一ドメイン ポリシーをどのように適用していますか?
あなたの質問に対する簡単な答えはノーです: AJAX 呼び出しの場合、ページがロードされたのと同じホスト名 (およびポート/スキーム) にしかアクセスできません。
いくつかの回避策があります。1 つはfoo.example.com
、 のリバース プロキシとして機能する URL を作成することですbar.example.com
。ホスト名が一致する限り、ブラウザはリクエストが実際にどこで実行されるかを気にしません。フロントエンドの Apache Web サーバーが既にある場合、これはそれほど難しくありません。
もう 1 つの方法はAJAST です。これは、スクリプト タグをドキュメントに挿入することで機能します。これが Google API の仕組みだと思います。
同一オリジン ポリシーの詳細については、http ://code.google.com/p/browsersec/wiki/Part2 を参照してください。
ホスト名が異なるため、これは機能しません。2 つのページのホスト、プロトコル、およびポートが同じである場合、これらのページは同じオリジンからのものであると見なされます。
同じ起源のポリシーに関するウィキペディアから:
「オリジン」という用語は、スクリプトを実行する HTML ドキュメントのドメイン名、アプリケーション層プロトコル、および (ほとんどのブラウザーで) TCP ポートを使用して定義されます。これらすべての値がまったく同じである場合にのみ、2 つのリソースは同じ起源であると見なされます。