如何禁用Xcode7下iOS9 App传输安全,并修复无法连接服务器错误

文章译自 iOS Development Tips .

Apple 近期针对iOS9做了一个比较激进的决定,禁用iOS App中所有不安全的HTTP通信,并将其作为App 传输安全(App Tranport Security, 简称ATS)的一部分。

这有助于安全更好的得到执行,但在很多情况下,开发者是无法控制服务器的。或者你可以控制服务器,你想在App 浏览器中像任意链接那样加载更多的外部内容。

如果你在ATS打开的情况下(使用NSURLSession或者其他第三方库 AFNetworking)尝试发送HTTP 请求,你就会看到以下错误:

Error Domain=NSURLErrorDomain Code=-1004 "Could not connect to the server." UserInfo=0x12ed5bad0 {NSUnderlyingError=0x12ee495b0 "The operation couldn’t be completed. (kCFErrorDomainCFNetwork error -1004.)"

下面向你展示如何完全禁用ATS。打开 Info.plist,添加下面几行:

这是你万不得已采取的最后一招。当然,你的通信服务最好还是能支持HTTPS,了解更多细节。

你可能感兴趣的:(如何禁用Xcode7下iOS9 App传输安全,并修复无法连接服务器错误)