【发布时间】:2013-01-31 14:57:05
【问题描述】:
我正在把头发拉出来。
我对我的服务器有一个 jquery ajax 调用,该调用在我的浏览器上运行,当我将它连接到我的本地代理进行 http 嗅探时,它在我的设备上运行,但是当它在我的 wifi 或代理上关闭时就挂起蜂窝网络。
我已设置 phonegap config.xml 以允许我的域。该请求是服务器上的获取以及 ajax 调用。你会注意到它是 jsonP。
调用是直接的 jquery,无论如何我都会发布代码。 api 对象是我为保存应用程序功能而制作的自定义对象。
var dfd = $.ajax({
url: myurl, // I've confirmed the url, but prefer to keep it private
data: {
ApplicationID: api.applicationID,
DeviceID: api.device.uuid(),
OSVersion: api.device.version(),
DeviceVersion: api.device.platform(),
Lat: lat,
Lng: lng,
Bearing: bearing
},
dataType: "jsonp",
timeout: 30000
})
.fail(function (event, jqXHR, ajaxSettings, thrownError) {
console.error(jqXHR);
});
我已经尝试过这个答案,这是我能找到的最接近我的问题的答案,但它似乎不起作用。 Phonegap jQuery ajax request does not work
我有什么遗漏吗?我做错了什么?
编辑: 我忘了说,我在 ajax 调用上设置的超时没有任何作用,它似乎只是忽略了它。
【问题讨论】:
-
将你的cordova.xml设置为
<access origin=".*"/>,然后重试,发布你的结果。 -
如帖子中所述,访问源已设置为允许该应用程序。
-
在您的 OQ 中设置了 config.xml,但我说的是 cordova.xml
-
我一定是错过了您回复中的拼写。我不知道 cordova.xml,或者它甚至是一个选项。它与 config.xml 有何不同?
-
白名单规则见
res/xml/cordova.xml... from docs.phonegap.com/en/2.0.0/…
标签: javascript jquery cordova