最近出た問題があります。私のコードでios9 HTTPの読み込みに失敗しましたkCFStreamErrorDomainSSL(-9802)
、私は、HTTPサーバーからいくつかの画像を読み込む:
let urlPicture = "http://images.mydomain.com/" + self.currentUser.pic
imageView.sd_setImageWithURL(NSURL(string: urlPicture))
私はそれがあまりにも遅れているだろうと思い、多分私は間違っているのだから、私は私の画像サーバのHTTPSを使用していませんこの点。 nodejsサーバーがAWS EC2インスタンスで実行されており、ポート80でリッスンしてイメージを管理しています。
ATSの制約のために、私は私のイメージのサブドメインのための私のInfo.plistファイルで例外を宣言します。 https://api.mydomain.com 別nodejsサーバ:<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>images.mydomain.com</key>
<dict>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<true/>
<key>NSExceptionMinimumTLSVersion</key>
<string>TLSv1.2</string>
<key>NSExceptionRequiresForwardSecrecy</key>
<true/>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSRequiresCertificateTransparency</key>
<false/>
<key>NSThirdPartyExceptionAllowsInsecureHTTPLoads</key>
<false/>
<key>NSThirdPartyExceptionMinimumTLSVersion</key>
<string>TLSv1.2</string>
<key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
<true/>
</dict>
</dict>
</dict>
最近、私は
同じ AWSインスタンス上で新しいサブドメインを追加しました443ポートでリッスンし、APIを管理します。私はAPIを呼び出すときに、この変更以来
は、すべてが私のアプリで結構ですが、私はイメージをロードするとき、私は、次の問題が直面しています:
NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802)
それを修正foはすべてのアイデアを?
アプリケーションはAppStoreで公開されますので、私はすべてのATSを無効にすることはできません。それが私の画像サブドメインの例外を置く理由です。 – Thomi
あなたの提案を加えましたが、問題は同じです。私は、iOSが自動的にHTTPをHTTPSに変更すると思っています。この行動を避けるための考えはありますか? – Thomi
もう1つの問題点は、Xcodeシミュレータでは問題が発生せず、実際のデバイスでのみ発生します。 – Thomi