Ios Datajs OData.read函数未通过PhoneGap触发
我正在尝试使用PhoneGap和JQuery mobile将移动web应用程序打包到iOS应用程序中。应用程序使用Datajs向另一个站点发出OData请求。我在Cordova.plist中将外部主机设置为“*”,当通过web浏览器使用相同的文件时,请求可以正常工作 问题是,一旦它被打包到iOS应用程序中,OData.read()函数就会被完全跳过,就像它们根本不存在一样。以下是导致问题的代码:Ios Datajs OData.read函数未通过PhoneGap触发,ios,cordova,odata,datajs,Ios,Cordova,Odata,Datajs,我正在尝试使用PhoneGap和JQuery mobile将移动web应用程序打包到iOS应用程序中。应用程序使用Datajs向另一个站点发出OData请求。我在Cordova.plist中将外部主机设置为“*”,当通过web浏览器使用相同的文件时,请求可以正常工作 问题是,一旦它被打包到iOS应用程序中,OData.read()函数就会被完全跳过,就像它们根本不存在一样。以下是导致问题的代码: var myURI = baseURL + "GetIndustries"; console
var myURI = baseURL + "GetIndustries";
console.log("before request");
OData.read({requestUri: myURI, username: username, password: password}, function (data){
console.log("successful request");
for (var i=0; i<data.results.length; i++) {
industries[i]=data.results[i];
}
}, function(err){
console.log("error: "+err);
});
console.log("after request...");
对我来说,这表明它完全跳过了OData函数,甚至是错误处理。我使用的是datajs-1.1.0和JQueryMobile的1.2.0版
任何帮助或指点都将不胜感激。
谢谢
对我来说,这表明它完全跳过了OData函数
错。对requestUri
的AJAX请求由datajs异步发送。您提到的OData函数是一个回调函数,这意味着稍后将调用它——即:当服务器编写了一个应答并且datajs收到该应答时
至于您的回调函数从未被调用的原因:请在调用OData.read
时检查您的参数。本文提供了一些例子。另请参阅
2012-12-21 11:05:48.104 opportunities[298:907] Multi-tasking -> Device: YES, App: YES
2012-12-21 11:06:04.791 opportunities[298:907] [LOG] before request
2012-12-21 11:06:04.806 opportunities[298:907] [LOG] after request...