顯示具有 App Transport Security 標籤的文章。 顯示所有文章
顯示具有 App Transport Security 標籤的文章。 顯示所有文章

2016年5月25日 星期三

App Transport Security

開發環境更新至iOS 9之後,原先正常運作的App資料跑不出來了,這個有一搭沒一搭始終無法投注太多心力的App...,一發生狀況,最為難的情況就是不常維護整個環境生疏了, 光是找到這個錯誤訊息就花費不少時間...

 kCFErrorDomainCFNetwork Code=-1022 "The resource could not be loaded because the App Transport Security policy requires the use of a secure connection." 

一查詢原來iOS 9針對資料傳輸新增了控管機制 App Transport Security (ATS):

 App Transport Security (ATS) enforces best practices in the secure connections between an app and its back end. ATS prevents accidental disclosure, provides secure default behavior, and is easy to adopt; it is also on by default in iOS 9 and OS X v10.11. You should adopt ATS as soon as possible, regardless of whether you’re creating a new app or updating an existing one. If you’re developing a new app, you should use HTTPS exclusively. If you have an existing app, you should use HTTPS as much as you can right now, and create a plan for migrating the rest of your app as soon as possible. In addition, your communication through higher-level APIs needs to be encrypted using TLS version 1.2 with forward secrecy. If you try to make a connection that doesn't follow this requirement, an error is thrown. If your app needs to make a request to an insecure domain, you have to specify this domain in your app's Info.plist file. 
 資料來源:What's New in iOS (9.0)


怎麼解決呢?