使用Cordova 2.5.0 + jQuery 1.91,我正在尝试解析远程JSON
$.support.cors = true;
$.mobile.allowCrossDomainPages = true;
$.ajax({
url: 'http://sub.foo.com/json.php?callback=?',
dataType: 'jsonp',
jsonp: 'jsoncallback',
timeout: 5000,
success: function(data, status){
alert("OK");
},
error: function(){
alert("Error");
}
});
它可以在我的桌面Chrome浏览器上运行,但不能在我的Android模拟器上运行(“错误”消息)。
我确实在'AndroidManifest.xml'上设置了权限
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
和'config.xml'
<access origin="http://sub.foo.com" />
我做错了什么?非常感谢你。
答案 0 :(得分:1)
在res / xml / cordova.xml文件中添加以下行
<access origin="http://127.0.0.1*"/> <!-- allow local pages -->
<access origin="http://192.168.1.211*" subdomains="true"/>
<access origin="http://70.38.120.153:240*" subdomains="true"/>
<!-- <access origin="https://example.com" /> allow any secure requests to example.com -->
<!-- <access origin="https://example.com" subdomains="true" /> such as above, but including subdomains, such as www -->
<access origin=".*"/>
<log level="DEBUG"/>
<preference name="useBrowserHistory" value="true" />
<preference name="exit-on-suspend" value="false" />