报错为 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就行了。一年几十块。
升级xcode7.1试试看,有个选项YES。。。。
AppDelegate.m
如果是 XCODE 7 以上的版本需要 plist 需要加上
1.自签名证书不被信任,可以实现conection代理,忽略证书,实现比较麻烦
2.你的服务器,应该是设置了只支持https请求,可以设置同时支持两个协议
你可以将自签名SSL证书替换成受浏览器信任的免费SSL证书,如startssl,沃通免费SSL,let us encrypt