Xcode7下使用HTTP解决方案

好久没更新博客了,最新iOS9推送了,入坑了最新的Swift2。因为之前没有学过iOS前端开发,所以入坑之后发现还是遇到了很多问题。现在捡回博客,将问题一一记录下来。毕竟作为苹果的小白鼠,打头阵留下实验记录给后人警惕也是非常重要的一件事~

今天遇到的这个问题比较特殊,使用Swift原生的网络通信协议发现无法发送Request进我的服务器。(Xcode的纠错功能很强大,全部报错都点了一遍,一个一个纠错后保证程序无问题,发现还是无法使用HTTP协议)

报错信息如下:

Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your app’s Info.plist file.

NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9847)

经查阅资料,Xcode7好像是要换成HTTPS的趋势,以此网络通信访问不推荐使用HTTP,而要求使用HTTPS。HTTPS挺麻烦的,还要openSSL生成证书啥的,以后有空研究。这里提供一种支持HTTP通信的方法:

Info.plist中添加 NSAppTransportSecurity,其类型选择 Dictionary,之后在NSAppTransportSecurity下添加NSAllowsArbitraryLoads,其类型选择Boolean,值设置为YES

Info.plist配置信息如下图所示:
配置HTTP许可

配置完之后,编译就不会再报错了。坑还是比较多了,不过我会义无反顾学完它的!!🐶