2015-11-03 43 views
1

這裏是日誌從NSCURL:NSCurl ATS工作,IOS 9不

Default ATS Secure Connection 
--- 
ATS Default Connection 
ATS Dictionary: 
{ 
} 
Result : PASS 
--- 

而且從IOS 9模擬器:

2015-11-02 20:52:29.928 energyvue[1137:17754] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802) 

的URL是在端口9445,雖然。無論如何要做到這一點,而不是壓倒運輸安全?

+0

你可以分享你正在看的URL嗎?你在使用'nscurl --ats-diagnostics --verbose'嗎? –

+0

我有同樣的問題。 nscurl --ats-diagnostics傳入所有測試,但我的應用程序無法與我的api通信(SURLSession/NSURLConnection HTTP加載失敗(kCFStreamErrorDomainSSL,-9802)。我的應用程序是一個Ionic混合應用程序。 –

回答

1

我有同樣的問題,並且通信在模擬器iOS9.2上工作,但沒有進入設備。

我修復了我的問題,檢查設備上的CFNetwork日誌(http://jonathanblog2000.blogspot.com.br/2015/07/using-cfnetworkdiagnostics-for-network.html),並使用Cordova ATS混合應用程序演示作爲示例(http://moduscreate.com/cordova-5-ios-9-security-policy-changes/)。

我的最後ATS配置:

<key>NSAppTransportSecurity</key> 
    <dict> 
     <key>NSExceptionDomains</key> 
     <dict> 
     <key>mydomain.com</key> 
     <dict> 
      <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key> 
      <true/> 
      <key>NSExceptionRequiresForwardSecrecy</key> 
      <false/> 
      <key>NSIncludesSubdomains</key> 
      <true/> 
      <key>NSThirdPartyExceptionRequiresForwardSecrecy</key> 
      <false/> 
     </dict> 
    </dict> 
</dict> 

我的環境:

  • API使用HTTPS TLSv1.2工作與SNI(亞馬遜AWS雲前,S3和Elasticbeanstalk)
  • iPhone 5S的iOS 9.2和Mac OS X El Capitan
  • 帶有Ionic Framework和AngularJS的Hibrid應用程序