1

我无法通过 HTTPS/SSL 连接到 API。我已经使用下面的字典完全禁用了应用程序传输安全 (ATS)(尽管 SSL 证书通过了 NSCURL 的所有测试)。

<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>
</plist>

但是:仍然存在 SSL 握手错误(如下),当谷歌搜索时,它仅表明它与应用程序传输安全性有关。

NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9813)

我创建了一个演示该问题的最小示例项目,可在 GitHub (https://github.com/samheather/AppTransportSecurityDemo) 上找到。您应该会发现在运行项目时它会在几秒钟内崩溃(在它尝试在 viewDidLoad 中建立连接之后)。

我尝试连接的域是https://demo.heather.sh,并且具有响应的证书(以便可以查看证书)的示例 URL 是https://demo.heather.sh :443/在线检查

有什么想法吗?

谢谢!

山姆

4

1 回答 1

1

iOS App Transport Security not accepting TLSv1.2 connection and plist exceptions not making any difference中所述,问题是服务器没有提供与中间证书结合的证书。现在这个问题已经解决了,一切正常:)

正如 Anand(上图)所说,一个很好的检查工具是:http ://ssllabs.com/ssltest/analyze.html?d=

于 2016-03-24T20:05:37.873 回答