我想使用 Alamofire 5 和Swift 4绕过证书验证。我正在使用Alamofire连接到具有自签名证书的服务器。这类似于问题Alamofire with a self-signed certificate / ServerTrustPolicy,但是答案是针对以前的Alamofire版本的,我不清楚如何将这种方法应用于版本5。有人知道如何在Alamofire 5中实现此方法吗?
答案 0 :(得分:0)
它与Alamofire 5非常相似,但是ServerTrustPolicy
已重构为具有一致类型的协议,以实现更好的可扩展性。与您链接的答案类似,您需要为您的域创建一个ServerTrustManager
:
let manager = ServerTrustManager(evaluators: ["your.domain.here": DisabledEvaluator()])
let session = Session(serverTrustManager: manager)
当然,您仍然需要为您的域添加ATS例外。
此外,您永远不要发布使用DisabledEvaluator
的代码,因为它将允许所有无效的TLS连接。