我想找到一种方法来找到确切的失败请求。(CFNetwork SSLHandshake失败(-9806))

时间:2016-10-13 12:03:01

标签: swift xcode ssl cfnetwork

xCode在我的控制台CFNetwork SSLHandshake failed (-9806)中收到了错误日志。

如何确定哪个请求对失败的日志负责。

我的应用启动时,有很多请求第三方和我自己的服务器请求。我无法弄清楚哪一个有错误。

日志控制台只给我CFNetwork SSLHandshake failed (-9806)

ps:我正在使用swift 3.0,Xcode 8. AFNetworking 3.0(似乎AFNetworking的请求没有错误,因为我使用AFNetworking记录器来记录AFNetworking的所有请求)

在测试时,iOS 8和iOS 9似乎比iOS 10制作更多失败的日志。

ps:我已将NSAllowsArbitraryLoads添加到我的plist文件中,并且我的许多https和http请求都已成功加载。

2 个答案:

答案 0 :(得分:0)

我认为你没有在info.plist中添加以下内容

<key>NSAppTransportSecurity</key>
   <dict>
       <!--Connect to anything (this is probably BAD)-->
       <key>NSAllowsArbitraryLoads</key>
       <true/>
   </dict>

如果没有添加,请添加此项,以免出现此错误。

答案 1 :(得分:0)

setenv("CFNETWORK_DIAGNOSTICS", "3", 0)

将有助于记录更多详细信息

参考here

Burp Suite也提供了一些帮助,看起来比wireshark更容易。 reference