iOS UIWebView 访问https绕过证书验证的方法

使用UIWebView加载带有签名认证的https网页(html)时,发生以下报错

MOffice[5807:483806] TIC SSL Trust Error [4:0x157051790]: 3:0
2019-03-11 15:43:07.990322+0800 MOffice[5807:483806] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9813)
2019-03-11 15:43:07.990726+0800 MOffice[5807:483806] Task <9939A644-0800-4FB4-A9B1-DA86396A1DBC>.<0> HTTP load failed (error code: -1202 [3:-9813])
2019-03-11 15:43:07.991399+0800 MOffice[5807:483714] NSURLConnection finished 

原因:使用webview加载自签名https站点的时候,必须在请求的时候将该站点设置为安全的,才能继续访问。

由于服务器没有真正的签名证书,所以此时需要UIWebView 访问https绕过证书的验证。
具体方法:创建一个NSURLRequest的分类(Category)即可

@interface NSURLRequest (IgnoreSSL)
+(BOOL)allowsAnyHTTPSCertificateForHost:(NSString*)host;
@end
@implementation NSURLRequest (IgnoreSSL)
+(BOOL)allowsAnyHTTPSCertificateForHost:(NSString*)host {return YES;}
@end

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,174评论 1 32
  • IOS之UIWebView的使用 刚接触IOS开发1年多,现在对于 混合式 移动端开发越来越流行,因为开发成本上、...
    学无止境666阅读 45,941评论 5 53
  • http://www.cnblogs.com/mddblog/p/5281748.html 一、整体介绍 UIWe...
    F麦子阅读 1,280评论 0 2
  • OS之UIWebView的使用 刚接触IOS开发1年多,现在对于 混合式 移动端开发越来越流行,因为开发成本上、速...
    知之未道阅读 1,676评论 0 4
  • 每个女孩子心里,都有那么一段敏感的时光吧。 那个人,走了,可能不会再回来。 但是爱情,走了会回来。 晦涩的时光,敏...
    小鹿_d2f1阅读 206评论 1 1