jQuery を使用して REST Web サービスにアクセスしようとしています。Firebug によると、このサービスは Access-Control-Allow-Origin が * に正しく設定されており、Chrome/Firefox でアクセスしても問題はありません。ただし、IEでは機能しません。
すでに投稿されているこの質問のバリエーションをたくさん調べましたが、これまでのところ、どの解決策もうまくいきませんでした。
これが私のコードです(読みやすくするために成功/失敗関数の内容を簡略化しています):
$.support.cors = true;
$.ajax({
url: 'https://api.guildwars2.com/v1/maps.json?callback=?',
cache: false,
type: 'POST',
dataType: "jsonp",
success: function() { alert("Success!"); },
error: function() { alert('Failed!'); }
});
またGET
、タイプとしても、コールバックの有無にかかわらず機能しません。
また、jQueryなしで機能させようとしましたが、成功しませんでした:
var xdr = new XDomainRequest();
var url = "https://api.guildwars2.com/v1/maps.json?callback=?";
if(window.XDomainRequest)
{
if(xdr)
{
xdr.onsuccess = function(){alert('Success!');};
xdr.open("get",url);
xdr.send();
}
else
{
alert('Failed!');
}
}
file_get_contents()
自分のサーバーでPHPを使用してWebサービスを単純にミラーリングすることを検討しているので、誰かが私に与えることができるアドバイスは大歓迎です.