美文网首页
使用WKWebView访问Https

使用WKWebView访问Https

作者: Ennnnnn7 | 来源:发表于2017-01-17 15:54 被阅读0次

    开发的项目需要政府网站,网站实用的是Https,而且网页上提示首次使用请下载证书,想了好多方法,最后发现可以通过WKWebView来实现访问。

    Https

    遇到的问题


    1. 首次使用需要下载证书
    2. 网站证书为自建证书
    3. 网站验证码图片显示必须下载证书


      首次需要下载根证书

    解决方法


    1. 首先在项目中设置Infoplist->ATP


      ATP设置
    2. 从网站下载证书,将证书格式设置为dercer格式,在终端中修改方法:
      .crt转.der的方法 openssl x509 -in /Users/mac/Desktop/ca.crt -out /Users/mac/Desktop/ca.der -outform DER
      .crt转.cer方法: openssl x509 -in /Users/mac/Desktop/ca.crt -out /Users/mac/Desktop/ca.cer -outform DER

    3. 导入证书
      直接把证书拉到项目中

      将证书导入项目
    4. WKWebView设置代理WKNavigationDelegate,在代理方法webView:didReceiveAuthenticationChallenge:completionHandler中设置证书信任

    Objective-C
    Swift

    这样,就可以正常的访问这个网站了!!撒花~~

    截图

    后记

    之前采用UIWebView可以绕过证书验证这一步,可是验证码图片必须有证书才可以显示。被这个折磨了一天,第二天用了WKWebView一下子就解决问题了,而且,WKWebView的性能还要优于UIWebView。还是需要不断努力呀!!!

    相关文章

      网友评论

          本文标题:使用WKWebView访问Https

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