4

我测试我的应用程序在Xcode 7,IOS 9并得到了以下错误:IOS 9应用程序传输安全性已阻止明文HTTP问题

应用传输安全性已阻止明文HTTP(HTTP://)资源负载,因为它是不安全的。临时例外可以通过您的应用程序的Info.plist文件进行配置。

所以我已经做了在如下Info.plist文件和应用程序的一些变化,现在在所有的IOS版本工作正常:

<key>NSAppTransportSecurity</key><dict> 
<key>NSExceptionDomains</key><dict><key>myserver.com</key><dict> 
<key>NSIncludesSubdomains</key><false/> 
<key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key> 
<true/></dict> </dict></dict> 

所以我的疑问是,这是否仍是一个永久性的修复,还是我应该在我的代码中使用NSURLSession。

感谢, 阿斌

+0

您可以在此找到后你需要的一切:[https://stackoverflow.com/questions/31254725/transport-security-has-blocked-a-cleartext-http](https://stackoverflow.com/questions/31254725/transport-security-has-blocked-a -cleartext-HTTP) – javifernandezr

回答

1

NSURLSession也受到App Transport Security。你必须问自己的真正问题是你是否在传输敏感信息。如果你是,你应该使用https,这样的信息是安全的。

在这种情况下,与传输安全信息的最佳做法相比,应用传输安全性基本上会警告您发送或接收的数据将通过不安全的路由。然后由您根据自己对数据的了解做出决定。如果它正在下载公开的非个人信息,您可能只是在plist中作出例外并继续进行。如果你身边扔人的出生或社会安全号码的日期,可能不是...

7

添加以下到您的Info.plist将禁用ATS

<key>NSAppTransportSecurity</key> 
<dict> 
    <key>NSAllowsArbitraryLoads</key><true/> 
</dict> 
相关问题