文章譯自 iOS Development Tips .
Apple 近期針對iOS9做了一個比較激進(jìn)的決定线婚,禁用iOS App中所有不安全的HTTP通信磁奖,并將其作為App 傳輸安全(App Tranport Security, 簡稱ATS)的一部分靠闭。
這有助于安全更好的得到執(zhí)行皱卓,但在很多情況下,開發(fā)者是無法控制服務(wù)器的∑睿或者你可以控制服務(wù)器灵奖,你想在App 瀏覽器中像任意鏈接那樣加載更多的外部內(nèi)容。
如果你在ATS打開的情況下(使用NSURLSession
或者其他第三方庫 AFNetworking
)嘗試發(fā)送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
,添加下面幾行:
這是你萬不得已采取的最后一招。當(dāng)然,你的通信服務(wù)最好還是能支持HTTPS竹祷,了解更多細(xì)節(jié)谈跛。