xml応答を生成するWebサービスを実装しました。
jquery ajaxを介して呼び出しているときに、問題が発生しています。
同じコンテナ内に同じファイルを置くと、適切な応答が得られます。これは、クロスドメインポリシーが原因です。
jqueryajaxでクロスドメインポリシーを使用する方法を教えてください。
私はTomcatをWebサーバーとして使用しています。すべてのWebサービスはこのサーバーにデプロイされます。
以下はコードです。
function doajaxcall()
{
$.ajax({
url: "http://localhost:8080/mobile-services/rest/languages/",
type: "GET",
processdata: true,
dataType: "json",
contentType: "application/json;",
beforeSend: function () { },
headers :
{
"Content-Type" : "application/json",
"Accept" : "application/json",
"Access-Control-Allow-Origin":"http://192.168.0.1:8080/"
},
success: function (data)
{
alert('Data..'+data);
},
error: function (XMLHttpRequest, textStatus, errorThrown)
{
try
{
alert(JSON.stringify(XMLHttpRequest) + "\n" + textStatus + "\n" + errorThrown);
}
catch (ex) { alert("Exception occured.. "); }
finally { }
}
});
}
ヘッダーの同じコンテナーからこのコードを実行すると、ヘッダーに「Access-Control-Allow-Origin」:「http://192.168.0.1:8080/」が表示されます。
コンテナの外で実行すると、取得します
"Access-Control-Allow-Origin":null
提案してください。