【问题标题】:Alamofire ssl wrong certificates SwiftAlamofire ssl 错误的证书 Swift
【发布时间】:2023-03-04 10:59:01
【问题描述】:

我正在尝试连接到使用无效证书的https://wrong.host.badssl.com/

我在 Viewcontroller.swift 中的代码:

let manager = ServerTrustManager(evaluators: ["wrong.host.badssl.com:443": DisabledEvaluator()])
let session = Session(serverTrustManager: manager)
session.request("https://wrong.host.badssl.com").response { response in
    debugPrint(response)
}

回复是:

[Request]: GET https://wrong.host.badssl.com
[Request Body]: 
None
[Response]: 
nil
[Response Body]: 
None
[Data]: None
[Network Duration]: None
[Serialization Duration]: 0.0s
[Result]: failure(Alamofire.AFError.sessionDeinitialized)

我做错了什么?

马蒂亚斯干杯

【问题讨论】:

    标签: swift ssl https alamofire


    【解决方案1】:

    如果您看到here,它清楚地解释了错误sessionDeinitialized 的详细信息

    `Session` which issued the `Request` was deinitialized, most likely because its reference went out of scope.
    case sessionDeinitialized
    

    基本上,您需要保留对 Session 的引用,直到您的请求完成,否则它将被取消初始化并取消您的请求。

    您可以通过 singleton 或将相同的实例注入到所有用户中,以使引用保持活动状态。你的选择。

    【讨论】:

      猜你喜欢
      • 2021-09-14
      • 2017-05-18
      • 2018-06-10
      • 2013-10-21
      • 2016-06-06
      • 2023-03-28
      • 1970-01-01
      相关资源
      最近更新 更多