1

私のウェブサイトで jQuery を使用して autosuggest スクリプトを実装しました。ブラウザーが www (つまりwww.xyz.com) で Web サイトをロードすると、検索候補が機能せず、ブラウザー コンソールに次のエラーが出力されます。

XMLHttpRequest はhttp://xyz.com/json.php?json=true&limit=15&input=testingを読み込めません 。Origin http://www.xyz.comは Access-Control-Allow-Origin で許可されていません。

jQuery / Chrome ではクロスドメイン AJAX 呼び出しを行うことができないことはわかっていますが、www なしで (つまり、単にxyz.com) Web サイトにアクセスすると、すべてが完全に機能します。この問題を解決するにはどうすればよいですか? 誰もそれについてアイデアを持っていますか?

4

1 に答える 1

4

同一生成元ポリシーの制限に違反しています。

http://www.xyz.comhttp://xyz.comこのポリシーに従って、クロスドメインと見なされます。

この問題を解決するには、$.ajax()リクエストで相対URLを使用するだけです。

$.ajax({
    url: '/json.php',
    ...
});

絶対の代わりに:

$.ajax({
    url: 'http://xyz.com/json.php',
    ...
});
于 2013-02-02T18:41:37.697 に答える