Swift4 manager.delegate.sessionDidReceiveChallenge-> Swift5

问题描述

我要进行以下查询。由于库过时的原因,我不得不切换到Alamofire版本(〜> 5.0)。好吧,这种变化影响了项目的整个逻辑,我正在尝试适应这个问题……最重要的是,我发现了这个问题……我发现了一些与该主题相关的报告。但是我找不到适合这种逻辑的正确方法。有关如何适应它的建议?

func acceptInvalidSSLCerts(){

let manager = Alamofire.SessionManager.default

    manager.delegate.sessionDidReceiveChallenge = { session,challenge in
        var disposition: URLSession.AuthChallengedisposition = .performDefaultHandling
        var credential: URLCredential?
        
        if challenge.protectionSpace.authenticationMethod == NSURLAuthenticationMethodServerTrust {
            disposition = .useCredential
            credential = URLCredential(trust: challenge.protectionSpace.serverTrust!)
        } else {
            if challenge.prevIoUsFailureCount > 0 {
                disposition = .cancelAuthenticationChallenge
            } else {
                credential = manager.session.configuration.urlCredentialStorage?.defaultCredential(for: challenge.protectionSpace)
                
                if credential != nil {
                    disposition = .useCredential
                }
            }
        }
        
        return (disposition,credential)
    }
}

}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...