您好我已经构建了一个Cordova应用程序,它从Angular Web服务获取数据:
var req = {
method: 'POST',
url: 'http://mywebservice.com',
headers: {
'Content-Type': 'application/json; charset=utf-8'
},
data: { data},
crossDomain: true
};
$http(req).
success(function(data, status, headers, config) {
callback(data);
}).
error(function(data, status, headers, config) {
console.log("error: "+JSON.stringify(status));
});
在Ripple模拟器或iOS模拟器中,一切都很好,并显示数据。但是,如果我在设备上运行应用程序,我将无法从Web服务获取数据。
在我的config.xml中,我有标签:
<access origin="*"/>
允许访问互联网。我还在AndroidManifest.xml中找到了这些权限:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
所以我不明白为什么如果一切在模拟器中完美运行我没有显示数据。
Cordova版本4.3.0。
更新: 好吧,如果我在iOS设备上运行该应用程序,它也可以。如果我在Android设备上运行它,则只会出现此问题。