【问题标题】:Cordova ajax post issue科尔多瓦 ajax 发布问题
【发布时间】:2013-05-23 03:24:35
【问题描述】:

我正在开发一个 JQuery Mobile 项目。现在我完成了核心功能,我想使用 Cordova 构建一个原生应用程序。在 phonegap 文档 2.7.0 中描述的 Xcode 中安装项目后,应用程序启动,一切似乎都很好。但是在触发 ajax 帖子后,它会返回状态代码 0 和错误。 该应用程序目前在所有常见浏览器中都可以正常运行。

你有什么想法吗?是 CORS 的问题吗?

非常感谢, 弗洛。

【问题讨论】:

  • CORS 不适用于 PhoneGap 应用。显示一些代码。特别是 ajax 部分
  • 那是什么错误?您是否在您的 cordova plist 中设置了外部主机白名单?
  • ajax 的错误描述不是最好的:"error StatusCode 0" 仅此而已。我的白名单包含“*”作为设置。
  • $.ajax({ type : 'POST', url : WSURL, crossDomain : true, data : gsMessage, success : function(data) { ...},

标签: ios cordova jquery-mobile


【解决方案1】:

(呸,我真的想发布 cmets 而不是在答案中问这些问题)

我对此也有很多问题。 经过大量研究,我发现错误401没有返回给Phonegap,变成了错误0。所以我想问你,你去的网站需要授权吗?

如果没有,请尝试将您的网址更改为不存在的网址。我尝试访问“floobaloo.html”,它总是返回 404 错误代码。如果您无法取回 404 代码,则问题出在您的 ajax 调用中。如果您确实收到 404,则说明您有授权问题。

【讨论】:

  • 网站需要授权(https)。如果我尝试 google.com,我会收到 405(不允许的方法)。 "foo.bar" 也返回 0。
  • 嗯,问题是代码 401 没有返回到 ajax 调用。问题出在他们的 Jira 上 ([PhoneGap JIRA]issues.apache.org/jira/browse/… ) 目前我认为 0 错误是 401(这是一个可怕的错误),并着手解决这个问题。
  • 有趣的是,使用 cordova 2.4.0 它仍然可以很好地工作。但是通过更新到 2.7.0 它会崩溃.... 我如何使用 AJAX 进行 https POST?有可能吗?
  • 我不熟悉 https 授权(我是初级开发人员,经常使用 Phonegap atm)。这方面是这里其他人照顾的事情。我的测试代码只有基本授权标头发送到测试服务器。
猜你喜欢
  • 2014-12-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-20
  • 2020-12-05
  • 2015-11-24
  • 2017-04-24
相关资源
最近更新 更多