App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure.-解决办法


运行环境:Xcode Version 7.3.1 (7D1014)

使用NSURL进行数据请求数据代码:

-(NSData *)requestData{
    NSURL *url = [NSURL URLWithString:@"http://easyread.ph.126.net/seRpubnsz_WwJGz7fexyeg==/7696583593456123398.jpg"];
    NSData *data = [NSData dataWithContentsOfURL:url];
    return data;
}

报错: 

2016-07-04 17:11:44.325 testMultiThread[2904:173072] App 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.

原因:Xcode版本的新特性要求App内访问网络请求,要采用 HTTPS 协议。

但是现在公司的项目使用的是 HTTP 协议,使用私有加密方式保证数据安全。现在也不能马上改成 HTTPS 协议传输。

最终找到以下解决办法:

1、在Info.plist中添加 NSAppTransportSecurity 类型 Dictionary ;

在info.plist中添加
<key>NSAppTransportSecurity</key>
<dict>
   <key>NSAllowsArbitraryLoads</key>
<true/>
</dict>

2、在 NSAppTransportSecurity 下添加 NSAllowsArbitraryLoads 类型Boolean ,值设为 YES;

运行结果:

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM