如何在iOS中处理“CFNetwork SSLHandshake失败”
有些时候,我得到CFNetwork SSLHandshake failed -(9806)
在我的代码,但我不知道为什么这是发生,因为我的代码运行顺利,除了当我运行它在iOS 6,然后在iOS 7 64位我得到这个警告。
有人可以build议我,如何处理这个问题?
通常当我得到CFNetwork SSLHandshake failed -(*)
因为我的本地WiFinetworking(设备连接到networking,而不是互联网)
在另一个networking上再次尝试(3G是我最快的解决scheme)
这也可能是由于iOS 9引起的。除非您在应用程序的Info.plist文件中指定exception域,否则iOS 9和OSX 10.11需要TLSv1.2 SSL用于计划请求数据的所有主机。
你可以在这里find更多信息: https : //developer.apple.com/library/prerelease/ios/technotes/App-Transport-Security-Technote/
或史蒂芬·彼得森的答案在这里,这是很清楚: https : //stackoverflow.com/a/30720929/1485701
有同样的问题,并确认后,服务器获得POST解决scheme是这样的:
- 清理项目:产品 – >清洁
- 从iOS设备/ iOS模拟器中删除您的应用程序,然后退出模拟器
- 编译你的应用程序并运行它
就我而言,就这么简单。
我有同样的问题,在我的情况下,解决scheme是在我写的代码中
initWithScheme:@"https"
代替
initWithScheme:@"http"
所以确保你使用正确的协议
另一个解决scheme:检查date/时间是否设置正确在您的手机。 直到某个date,SSL证书才有效。