微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jquery – 在Cordova应用程序中HTTP加载失败(kCFStreamErrorDomainSSL,-9813)

我已经使用Cordova 3.2和jquery mobile 1.3创建了一个iOS应用程序。我使用jquery ajax向RESTfull服务发送请求以检索/更新信息

我有一些测试设备,各种iPhone,各种不同的iOS版本。在iPhone 4S上运行iOS 7时,如果发送任何ajax请求,我会收到以下错误消息:

NSURLConnection/CFURLConnection HTTP load Failed (kcfStreamErrorDomainSSL,-9813)

这只会发生在这个设备上,在另一个iPhone 4S上,也运行iOS 7,它的工作原理非常好,就像我使用的所有其他测试设备一样。

我已经读过,这表明证书在某些地方是无效的,在这种情况下,这可以被忽略,为什么会影响一个设备?

任何人都可以提出为什么会发生这种情况,以及可能会对设备造成什么影响,从而阻止其在我的一个设备上运行。谢谢

解决方法

如果它在某些设备上工作,而不是其他设备,则这些设备的证书验证参数有一些差异。这里有一些事情要看:

快乐的设备有一些根证书,不快乐的设备不?特别是如果他们运行不同的iOS版本,他们也可能有不同的可信证书列表。尝试进入设置>一般>关于并比较最底层的“Trust Store”号码。查看更多信息here
>在过去的某个时刻,您是否已经在快乐的设备上手动接受一些中间证书(用于签署此证书)?
>不快乐的设备上的日期/时间是否错误?如果设置为证书到期日之后或证书颁发日期之前的时间,它将拒绝它。我总是在这个脚下射击自己!

如果您访问不愉快设备上的浏览器中的端点URL,它会给您什么错误? (注意:显然,您的服务器也会给您一些错误,因为您没有使用正确的标题和参数进行请求,我在谈论Safari本身,但应该给出一个更详细的信息,它是什么(它认为)是证书有误。)

*编辑以纠正我误会的内容:如果您在Safari中访问URL,则您无权接受叶子证书,如果您尝试直接加载它们,则只能选择接受中间证书。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


jQuery表单验证提交:前台验证一(图文+视频)
jQuery表单验证提交:前台验证二(图文+视频)
jQuery如何实时监听获取input输入框的值
JQuery怎么判断元素是否存在
jQuery如何实现定时重定向
jquery如何获取复选框选中的值
jQuery如何清空form表单数据
jQuery怎么删除元素节点
JQuery怎么循环输出数组元素
jquery怎么实现点击刷新当前页面