0

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

通过 URLSession 发送 POST 请求时,它给出 NSURLSession/NSURLConnection HTTP load failed (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>

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

4

0 回答 0