我开发了一个应用程序,我可以从服务器URL http://user:password@xx.xx.x.xxx:xxxx/odata/OdataTMEDVDB/dbname获取数据?$ format = JSON& $ filter = YEAR%20eq%202015& $ top = 10& $ callback =?
这个查询在浏览器上工作正常,在使用phonegap编译后,该事件根本不会触发获取数据 这是代码
var query = "http://user:password@xx.xx.x.xxx:xxxx/odata/OdataTMEDVDB/dbname?$format=JSON&$filter=YEAR%20eq%202015&$top=10&$callback=?"; //this is my callback $.ajax({ dataType: 'jsonp', url: query, jsonpCallback: 'callback', success: callback }); function callback(result) { alert("hello"); alert(result.d.results.length); var shows = result.d; $('#resultdata').html(shows); }
请咨询
答案 0 :(得分:1)
某些浏览器可以拒绝URL基本身份验证密码。尝试使用beforeSend
:
$.ajax({
dataType: 'jsonp',
url: 'http://xx.xx.x.xxx:xxxx/odata/OdataTMEDVDB/dbname?$format=JSON&$filter=YEAR%20eq%202015&$top=10&$callback=?',
jsonpCallback: 'callback',
success: callback,
//New code:
beforeSend: function (xhr) {
xhr.setRequestHeader ("Authorization", "Basic user:password");
},
});