美文网首页
Swift3 Alamofire配置Https

Swift3 Alamofire配置Https

作者: Distance先生 | 来源:发表于2017-06-15 14:30 被阅读0次

在AppDelegate的didFinishLaunching函数中调用如下函数:

    func configureAlamofireManager() {
        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 = URLSession.AuthChallengeDisposition.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)
        }
    }

相关文章

网友评论

      本文标题:Swift3 Alamofire配置Https

      本文链接:https://www.haomeiwen.com/subject/pjzyqxtx.html