美文网首页
swift-https的支持

swift-https的支持

作者: ksnowlv | 来源:发表于2018-07-18 17:04 被阅读168次

swift中,如何支持https呢?

https分为单向(客户端校验服务端)的和双向(客户端/服务端相互校验)具体可查阅相关资料。

实现URLSessionDelegate协议中

urlSession(_ session: didReceive challenge: completionHandler: )

具体实现如下:


    func urlSession(_ session: URLSession, didReceive challenge: URLAuthenticationChallenge, completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
        
        var disposition = URLSession.AuthChallengeDisposition.performDefaultHandling
        
        var credential:URLCredential? = nil
        /*disposition:如何处理证书
         performDefaultHandling:默认方式处理
         useCredential:使用指定的证书
         cancelAuthenticationChallenge:取消请求
         */
        
        if challenge.protectionSpace.authenticationMethod == NSURLAuthenticationMethodServerTrust {
            credential = URLCredential(trust: challenge.protectionSpace.serverTrust!)
        
            if credential != nil {
                disposition = URLSession.AuthChallengeDisposition.useCredential
            }
        }else if challenge.protectionSpace.authenticationMethod == NSURLAuthenticationMethodClientCertificate {
            //单向验证,客户端不需要服务端验证,此处与默认处理一致即可
            disposition = URLSession.AuthChallengeDisposition.cancelAuthenticationChallenge
        }
        else {
            disposition = URLSession.AuthChallengeDisposition.cancelAuthenticationChallenge
        }
        
        completionHandler(disposition, credential)
    }
}

相关文章

  • swift-https的支持

    swift中,如何支持https呢? https分为单向(客户端校验服务端)的和双向(客户端/服务端相互校验)具体...

  • 支持,支持

    从不理解孩子的行为到支持,我的观念转变的还是蛮快的。 孩子都没有时间和我交流了,我只好自己上网搜了一下大学生商赛。...

  • 支持,真的支持

    朋友圈看到这样一条简讯,哭笑不得,哈哈,不过,很称赞这种惩罚措施,即可以教育当事人,也可以让本人学会防疫...

  • 如何更好的支持与被支持?

    本文来聊聊心理咨询中的支持技术。最近身边一个朋友跟我说,很多人感觉到压抑,不敢开口,尤其是面对异性,自己又是适龄单...

  • 支持的力量

    此生做得最艰难的一个决定,在去年年初,我爸病危时,需要选择是否开颅治疗。这个过程,从决定转院开始,加上救护车途中的...

  • 生命的支持

    妈妈离开了这个让人无限留恋的世界,尚小的孩子该是何等的悲伤欲绝。老师给予孩子的支持在孩子当下和未来的生命中是多么的...

  • 员工的支持

    我给他分享,一个老板,一年挣100多万后,就不是光考虑自己的收入了。你觉得你这个收入很舒服了,解决了你个人问题了。...

  • 爱的支持

    我是在想着你的…… 我的心里都是你哦…… 我的眼里只有你哦…… 我想把你捧在手心里…… 我想给你呈现美丽…… 我用...

  • 支持的力量

    晚上硕下晚自习回来,我和小宝已经睡下,硕爸嘱咐要轻点声音不要吵醒我们。硕还是悄悄走进我的房间,轻叫一声:“妈妈起来...

  • 满满的支持

    今天雷阵雨,娄底和武汉的天气一样,我定了14:23娄底到武昌的火车。 早晨起来下楼喝水,特意嘱咐老爸不要给我煮鸡蛋...

网友评论

      本文标题:swift-https的支持

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