AFNetworking 3.2.0 '配置的安全策略只能应用于具有安全基本 URL(即 https)的管理器

Posted

技术标签:

【中文标题】AFNetworking 3.2.0 \'配置的安全策略只能应用于具有安全基本 URL(即 https)的管理器【英文标题】:AFNetworking 3.2.0 'a security policy configured with can only be applied on a manager with a secure base url (i.e. https)AFNetworking 3.2.0 '配置的安全策略只能应用于具有安全基本 URL(即 https)的管理器 【发布时间】:2020-04-30 14:31:25 【问题描述】:

最近我将 ios 应用的 AFNetworking pod 从 3.1.0 更新到了 3.2.0。 AFNetworking3.2.0 出现崩溃应用程序并出现以下错误

Terminating app due to uncaught exception 'Invalid Security Policy', reason: 'A security policy configured withAFSSLPinningModeCertificatecan only be applied on a manager with a secure base URL (i.e. https)'

执行代码后应用崩溃

Which is working fine when switch back to old version with AFNetworking_3.1.0 But crashing on 3.2.0

我也在尝试 operation.securityPolicy.allowInvalidCertificates = YES; 但没用

请指导 m 对于 AFNetwrking3.2.0,我还有什么需要改进的。

【问题讨论】:

【参考方案1】:

查看这个拉取请求: https://github.com/AFNetworking/AFNetworking/pull/3687

它清楚地提到AFHTTPSessionManager 实例配置了不安全的http 基本 URL 将引发异常

要从3.2.0 开始使用AFHTTPSessionManager,如果您要设置使用AFSSLPinningModeCertificateAFSSLPinningModePublicKey 配置的安全策略,则必须切换到安全的https 基本URL

【讨论】:

以上是关于AFNetworking 3.2.0 '配置的安全策略只能应用于具有安全基本 URL(即 https)的管理器的主要内容,如果未能解决你的问题,请参考以下文章

iOS AFNetworking框架HTTPS请求配置

原AFNetworking源码阅读

iOS 8 扩展的 AFNetworking 后台会话配置

通过 AFNetworking 建立连接时,强制我的应用使用 *** 配置?

AFNetworking 2.0,使用 NSURLSession 下载图片

afnetworking使用https