您的位置:首页 > 理论基础 > 计算机网络

iOS Https 相关资料整理

2016-12-16 16:50 274 查看
1、

OS9 中默认非HTTPS的协议是被禁止的,我们为了能正常发起http请求,在info.plist文件中添加AppTransportSecuritySettings字典,将NSAllowsArbitraryLoads设置为YES来禁止ATS。

iOS10 从2017年1月1日起苹果提出所有新提交的App默认不允许使用NSAllowsArbitraryLoads来绕过ATS的限制,也就是说强制我们用HTTPS,否则我们提交App可能会被拒绝。

解决方案

通过NSExceptionDomains设置白名单的方式来针对特定的域名开放HTTP内容来通过审核。可以简单理解成,把不支持https协议的接口添加到白名单。

操作步骤

在项目info.plist中添加一个Key:App Transport Security Settings,类型为Dictionary

在第一步添加的字典内添加一个Key: Exception Domains,类型为Dictionary

在Exception Domains内添加要支持的域,其中域作为Key,类型为Dictionary

每个域下面需要设置3个属性:类型为Boolean

NSIncludesSubdomains YES

NSExceptionRequiresForwardSecrecy NO

NSExceptionAllowsInsecureHTTPLoads YES

应用场景

第三方不支持https请求的接口

不支持https协议的图片地址

不支持https协议的h5网址

原文链接:http://www.jianshu.com/p/10dbc4d49e81

2、

iOS使用自签名证书实现HTTPS请求

原文链接:http://www.cocoachina.com/ios/20160928/17663.html

demo地址:https://github.com/fengling2300/networkTest
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: