在我们的一个应用程序部署期间出现异常情况. iOS版本运行良好,但Android版本的应用程序不起作用.经过一些故障排除后,我们发现app会调用API. API Web服务器缺少证书链.我们尝试使用safari在iOS8 iphone上进行API调用,它在没有任何警告的情况下工作,而在androID上,它提供了证书警告.我理解这个问题,但想知道为什么它在iOS上运行? iOS在 *** 作系统级别的SSL验证中是否有任何错误?
解决方法:
您看到的行为是由于某个浏览器和用户代理(包括iOS上的Safari)实现的称为AIA追逐的功能.证书可以具有Authority Information Access extension的值,浏览器或底层框架可以使用它来通过获取服务器提供的中间件来构建完整的证书链.
AndroID不会进行AIA追逐,这就是您从AndroID应用调用API时看到错误的原因.我一直无法找到为什么它没有内置到AndroID中.
解决此问题的正确方法是确保Web服务器为连接客户端提供必要的中间证书.
总结以上是内存溢出为你收集整理的iOS允许无效证书,而android则没有全部内容,希望文章能够帮你解决iOS允许无效证书,而android则没有所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)