我对我现在面临的情况感到非常沮丧。 一些帮助将不胜感激。
通过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>
感谢您花时间阅读我的问题(对我来说是主要问题)