私たちはアプリケーションに Ajax 呼び出しを使用しており、サーバー ドメイン内の URL に対してはうまく機能しています。しかし、Web で URL の ajax 呼び出しを使用すると、適切なエラー メッセージが表示されずに失敗することがわかりました。指定された詳細を使用して Web を検索しましたが、この問題の合理的な原因や解決策は見つかりませんでした。
私のコードは、以下のような単純な ajax 呼び出しです。
var url = "http://www.google.com";
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
alert('done');
}
};
xmlhttp.open("GET",url,true);
xmlhttp.send();
URL がサーバー ドメインからのものである場合、これは問題なく機能しますが、これが Google のようなオープンなインターネット URL である場合、異なるブラウザーでは異なる動作で失敗します。
IE9 では、xmlhttp.open("GET",url,true) で「Javascript エラー: アクセスが拒否されました」が表示され、xmlhttp.status が「エラー c00c023f により操作を完了できませんでした」となる
Chrome と FF では、ログにエラーは表示されませんが、xmlhttp.status は 0 になります。
いずれの場合も、ajax 呼び出しは成功しません。
そのような問題の原因は何ですか?ブラウザで直接試してみるとGoogleのURLにアクセスできるので、これはネットワークの問題ではないと思います。では、ブラウザからの ajax 呼び出しの試行をブロックするものは何でしょうか?
よろしく Vijay.K