Несколько раз я получаю CFNetwork SSLHandshake failed -(9806)
в своем коде, но я не уверен, почему это происходит, так как мой код работает гладко, за исключением случаев, когда я запускаю его в iOS 6, а затем на iOS 7 64-bit я получаю это предупреждение.
Может ли кто-нибудь предложить мне, как справиться с этой проблемой?
Как обращаться с "CFNetwork SSLHandshake failed" в iOS
Ответ 1
Обычно, когда я получаю CFNetwork SSLHandshake failed -(*)
Его из-за моей локальной сети Wi-Fi (устройство подключено к сети, но not Интернет)
Попробуйте еще раз в другой сети (3G - самое быстрое решение для меня)
Ответ 2
Это также может произойти из-за iOS 9. Для iOS 9 и OSX 10.11 требуется TLSv1.2 SSL для всех хостов, на которых вы планируете запрашивать данные, если вы не укажете домены исключений в вашем файле Info.plist приложения.
Дополнительную информацию вы можете найти здесь: https://developer.apple.com/library/prerelease/ios/technotes/App-Transport-Security-Technote/
Или Стивен Петерсон ответит здесь, что совершенно ясно: fooobar.com/questions/19038/...
Ответ 3
Имел ту же проблему, и после того, как я подтвердил, что сервер получает POST, это решение было следующим:
- Очистить проект: Продукт → Очистить
- Удалите приложение с устройства iOS/iOS Simulator и выйдите из Simulator
- Скомпилируйте приложение и запустите его
В моем случае, просто так.
Ответ 4
У меня была та же проблема, и в моем случае решение заключалось в том, что в моем коде я написал
initWithScheme:@"https"
вместо
initWithScheme:@"http"
Поэтому убедитесь, что вы используете правильный протокол
Ответ 5
Другое решение: проверьте, правильно ли установлена дата/время в телефоне. SSL-сертификаты действительны до определенной даты.