NSURLSession / NSURLConnection HTTP加载失败(kCFStreamErrorDomainSSL,-9800)

时间:2018-05-16 19:23:51

标签: swift ssl app-transport-security nsapptransportsecurity

我对我现在面临的情况感到非常沮丧。 一些帮助将不胜感激。

通过URLSession发送POST请求时,它会给NSURLSession / NSURLConnection HTTP加载失败(kCFStreamErrorDomainSSL,-9800)错误。

我正在使用GoDaddy SSL证书,该网站在访问时没有任何问题,在最左侧角落显示安全。

上述错误偶尔发生一次。每次发送请求时都不会发生上述错误。我的应用程序每秒发送一个请求来轮询新数据。

我认为问题可能是由于在短时间内发送了这么多请求。我不完全确定是否是这种情况。

我使用Tomcat作为Web服务器而catalina.out没有显示任何错误。

要查看可能出现的问题,我通过

运行了对角线检查
nscurl --ats-diagnostics https://***

结果如下:

Configuring TLS exceptions for ***
---
TLSv1.3
2018-05-16 11:35:00.691 nscurl[92034:10819554] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9800)
Result : FAIL
---

Configuring TLS exceptions with PFS disabled for ***
---
TLSv1.3 with PFS disabled
2018-05-16 11:35:01.273 nscurl[92034:10819468] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9800)
Result : FAIL
---

Configuring TLS exceptions with PFS disabled and insecure HTTP allowed for ***
---
TLSv1.3 with PFS disabled and insecure HTTP allowed
2018-05-16 11:35:01.591 nscurl[92034:10819579] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9800)
Result : FAIL
---`

其他一切都过去了。

我试图缓解这个问题。在Info.plist中,我没有注释下面显示的那些。我也尝试过任意负载,但它不起作用。另外,任意负载在安全方面有一些缺点,所以我想避免尽可能多地使用它

<key>NSAppTransportSecurity</key>
    <dict>
<!--        <key>NSExceptionDomains</key>-->
<!--        <dict>-->
<!--            <key>***</key>-->
<!--            <dict>-->
<!--                <key>NSExceptionRequiresForwardSecrecy</key>-->
<!--                <false/>-->
<!--                <key>NSExceptionAllowsInsecureHTTPLoads</key>-->
<!--                <true/>-->
<!--                <key>NSExceptionMinimumTLSVersion</key>-->
<!--                <string>TLSv1.2</string>-->
<!--            </dict>-->
<!--        </dict>-->
    </dict>

感谢您花时间阅读我的问题(对我来说是主要问题)

0 个答案:

没有答案