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