
【引自IamOkay的博客】 iOS在Apple公司的强迫请求下,数据传输必须按照ATS(App Transefer Security)条目。关于AFNetworking框架传输HTTPS数据。
一.AllowsArbitraryLoads 白名单机制
NSAllowsArbitraryLoads是ATS推广过程中的产品,当然也许可持续良久甚至永远,为了拜访HTTP办事,一般须要绕过ATS限制,须要设备info.plist文件
- <key>NSAppTransportSecurity</key>
- <dict>
- <key>NSAllowsArbitraryLoads</key>
- <true/>
- </dict>
这种机制实际上是许可了所有HTTP 和HTTPS的拜访,显然,这种做法实际上很危险。设置为false就能避免绕开ATS,问题是我们真的须要完全封闭这个选项么?
比如某些文件办事器,CDN办事器设备HTTPS反而影响传输速度,这种情况下HTTP反而具有很高的优胜性。是以,对于这类办事器的HTTP传输,我们其实也可以应用如下方法(设置白名单),白名单之外的必须应用HTTPS协定。
- <key>NSAppTransportSecurity</key>
- <dict>
- <key>NSExceptionDomains</key>
- <dict>
- <key>lib.baidu.com</key>
- <dict>
- <key>NSIncludesSubdomains</key>
- <true/>
- </dict>
- <key>oss.fastdfs.cn</key>
- <dict>
- <key>NSIncludesSubdomains</key>
- <true/>
- </dict>
- </dict>
- </dict>
注[1]:办事端证书库可以和办事端信赖证书库应用同一个证书库,独一要做的是把客户端证书导入进行。
二.免证书验证
留意:以上说的证书是大年夜办事器端到处的cer或者crt证书,这类证书是X509 Der格局的二进制编码证书,不是X509 PAM格局的Base64编码证书,关于自签名证书的生成请参考如下地址
免证书验证,一般来说是client证书库不会把server传输来的证书进行校验。
- AFHTTPSessionManager * manager = [MyAFNetworking createCredentialsClient];
举个例子
推荐阅读
3.平台及数据治理才能 在2016年,人工智能公司产生的资金收入估值达到了80亿美元,并且这一数字有望在将来的三年内翻五倍。企业家们都纷纷投资人工智能,不仅将其作为一种降低成本的方法,>>>详细阅读
本文标题:iOS AFNetworking框架HTTPS请求配置
地址:http://www.17bianji.com/lsqh/34908.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示