首页 > 开发 > iOS > 正文

自己做的https证书 在iOS上请求https 报错 怎么能越过SSL证书验证

2017-09-08 13:53:59  来源:网友分享

报错为 NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9824)
还有这个错误 CFNetwork SSLHandshake failed (-9824)
代码如下

  NSURL *url = [NSURL URLWithString:@"https://booking.cn.fcm.travel/img/200049324/144799957714318319/20151120140610983315.png"];      UIImage *image = [UIImage imageWithData: [NSData dataWithContentsOfURL:url]];  UIImageView *image1 = [[UIImageView alloc] init];  image1.frame= CGRectMake(10, 10, 100, 100);  image1.image=image;      [self.view addSubview:image1];

下面的操作是不管用的
info.plist加上这一段,右键 info.plist -> open as -> source code
用代码加

<key>NSAppTransportSecurity</key><dict>    <key>NSAllowsArbitraryLoads</key>    <true/></dict>

解决方案

买一个SSL证书。自定义的是不会通过的,参考万恶的12306.
目前沃通的免费SSL无法通过Android和IOS的认证。
用付费的吧,用最便宜的RapidSSL就行了。一年几十块。