HTTPS/SSL経由でAPIに接続する際に問題があります。 SSL証明書がNSCURLのすべてのテストに合格しているにもかかわらず、以下の辞書を使用してApp Transport Security(ATS)を完全に無効にしました。App Transport Securityが無効で、SSLハンドシェークエラーが発生しています
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
</plist>
しかし:SSLハンドシェイク・エラーがまだあります(下記)ときググは、唯一それがアプリケーションのトランスポート・セキュリティをどうするのです示唆、ということ。
NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9813)
私は問題、available on GitHub (https://github.com/samheather/AppTransportSecurityDemo)を実証し、最小限のサンプルプロジェクトを作成しました。プロジェクトを実行すると、数秒でクラッシュすることがわかります(直後にviewDidLoadで接続を試みます)。
私が接続しようとしているドメインはhttps://demo.heather.shで、レスポンスを持つ証明書(証明書を見ることができる)のサンプルURLはhttps://demo.heather.sh:443/checkOnlineです。
ありがとうございます!
サム
みました:今、これが固定されていることを、すべての作品:)
をアナンド(上記)としてこれをチェックするのに最適なツールである、と言いますか? https://www.ssllabs.com/ssltest/analyze.html?d=demo.heather.shは、チェーンが不完全であることを示し、SSLの失敗を引き起こす可能性があるかどうかはわかりません。 –
*注:*私はこれをはるかに明確な方法でhttp://stackoverflow.com/questions/36187787/ios-app-transport-security-not-accepting-tlsv1-2-connection-and-plist-exceptionsから転載しましたか? noredirect = 1#comment60019224_36187787これで、App Transport Layerが問題を引き起こしていたことがなくなりました。 –