phonegap / cordova windows 8 ajax错误?
Posted
技术标签:
【中文标题】phonegap / cordova windows 8 ajax错误?【英文标题】:phonegap / cordova windows 8 ajax error? 【发布时间】:2015-04-07 15:03:13 【问题描述】:我有一个进行 jqm ajax 调用的 cordova 应用程序。它适用于 android、ios 和 WP8。但是,当我为 Windows 8 构建和运行时,ajax 调用失败并出现 404 错误。
我有最新的 windows 平台版本: phonegap --版本 4.2.0-0.23.0
playtform 版本为 3.7.1
代码是这样的:
$.ajax(
url: 'http://ip.jsontest.com/',
dataType: 'jsonp',
jsonp: 'jsoncallback',
timeout: 5000,
success: function (data, status)
//handle your data
navigator.notification.alert('good', null, 'good', 'done');
,
error: function (ed)
navigator.notification.alert(
JSON.stringify(ed),
null,
'Error',
'Done'
);
);
调用 getUserDataFail 时出现错误: "\"readyState\":4,\"status\":404,\"statusText\":\"error\""
我尝试将以下内容添加到我的 DeviceReady 顶部: $.support.cors = true; $.mobile.allowCrossDomainPages = true; $.mobile.phonegapNavigationEnabled = true;
我的 config.xml 中还有以下内容:
机器确实可以上网,并且网址有效。
【问题讨论】:
【参考方案1】:事实证明,更多的研究让我回答了自己的问题。 错误“应用程序无法在本地上下文中加载远程 Web 内容”被发送到其中一个调试窗口中。
就我而言,我不需要真正使用 JSONP。将调用更改为不指定 jsonp 解决了问题:
$.ajax(
url: 'http://ip.jsontest.com/',
timeout: 5000,
success: function (data, status)
//handle your data
navigator.notification.alert('good', null, 'good', 'done');
,
error: function (ed)
navigator.notification.alert(
JSON.stringify(ed),
null,
'Error',
'Done'
);
);
以上工作正常。我希望这可以节省其他人的搜索时间。
【讨论】:
非常感谢,我浪费了 4 个小时以上的时间来寻找解决方案。你的成功了!以上是关于phonegap / cordova windows 8 ajax错误?的主要内容,如果未能解决你的问题,请参考以下文章
MPNS 错误请求 Windows Phone 8.1 (Cordova/Phonegap)
如何在推送插件 PhoneGap/Cordova 4.0 中替换 window.plugin(已弃用)?
如何通过绝对路径访问我的应用程序文件 - windows phone - Phonegap/Cordova
使用 Cordova/Phonegap 保存从手机摄像头拍摄的图像 Windows Phone 7
PhoneGap 应用程序上用于 Apache Cordova 的 Windows Azure 通知中心插件 - 未定义 WindowsAzure