このコードを使用してAndroidでPhonegapとjqueryを使用してアプリを構築し、xmlデータをリクエストします。
$.ajax({
url: 'test.xml',
type: 'GET',
success: function(xml) {
//Retrieve user token
var token = $(xml).find('token').text(); // Store token for subsequent requests
alert("Token is " + token);
},
error: function(xhr) {
alert("Error");
xml = xhr.responseXML;
$(xml).find('error').each(function() {
alert($(this).find('message').text());
});
}
});
最終的にはAPIに対してRESTリクエストを作成しますが、静的ファイルを使用してこの方法を確認し、問題を特定してみます。
これは、Android 2.3.4を使用している携帯電話で、ローカルとリモートの両方の場所からファイルを要求するときに正常に機能します。Android 3.2.1を使用して新しいデバイスでリモート(つまり、クロスオリジン)リクエストを行うと、エラーが発生します。
これは、最近のブラウザのセキュリティポリシーが厳しくなっているためですか?もしそうなら、そして私がこれに対処する方法を提案しますか?
みんなありがとう。