javascript - 为什么 Javascript Ajax 调用在 IOS 5 以外的 IOS 设备上通过 SSL 失败。

标签 javascript jquery ios ajax ssl

我有一个移动应用程序,它通过 SSL 向同一域中的另一个应用程序发出 ajax xmlHttpRequest 请求以对用户进行身份验证。此调用在 IOS 5 之前的 IOS 设备上失败,响应代码为零,我被告知它无法访问域。它在 IOS 5 和桌面浏览器上运行良好。此应用程序使用纯 javascript,没有 jquery 或类似的东西。

奇怪的是,我在同一个域上有另一个应用程序通过 ssl 进行类似的调用以进行身份​​验证,并且此调用在所有设备上都成功。唯一真正有趣的区别在于此应用程序使用 jquery.ajax() 进行调用。

通过 Charles ssl 代理调试我得到了同样的错误。所以,我直接转到 safari 地址栏中的 ajax url。然后有人警告我关于不可靠的 Charles 证书,并询问我是否愿意接受它。执行此操作后,ajax 调用始终有效......在所有设备上!然后,我关闭了 Charles 代理,再次开始收到失败的 ajax 调用。 :(

请有人可以就他们所知道的任何事情向我提供建议:

  1. IOS 5 和以前版本的 IOS 之间是否存在任何与 SSL 相关的差异,并且可能是造成这种情况的原因。
  2. jquery 在他们的 ajax 调用中做了什么可以使其在标准 xmlHttpRequest 不起作用时起作用?

提前致谢...

最佳答案

这原来是证书错误。问题是一些浏览器接受了无效的证书,而另一些则没有。令人沮丧,但修复证书解决了我的问题。

关于javascript - 为什么 Javascript Ajax 调用在 IOS 5 以外的 IOS 设备上通过 SSL 失败。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9395152/

相关文章:

javascript - 如何使用BURSTS获取BURST账户余额?

javascript - 使用Javascript API在Word文档中的光标处插入表格

javascript - 使用 jQuery 生成的表中的 Bootstrap 弹出窗口

javascript - Underscore.js - 根据属性过滤 json 数组

ios - 无法在 iOS Swift 3 中单击 UIBarButtonItem 添加目标和运行功能

ios - 使用 alamofire 下载文件获取代码 -1001

javascript - 使用 jQuery 从 PHP 发布响应?

jquery - 如何提醒下周的开始和结束日期

php - 如何在JQgrid元素中添加功能,例如选择框中的Onchange事件

ios - 如何使用 Realm 和 UICollectionView 防止 NSInternalInconsistencyException