Моему приложению необходимо подключиться к внутреннему веб-серверу через https.Сервер развития доступа с самоподписанным сертификатом SSL
Сервер имеет отдельный сертификат, который действителен до следующего года:
я установил этот сертификат в IOS Simulator и на устройстве (Certificate.cer):
Я слежу за трафиком с помощью Charles, и запрос даже не «покидает» мой компьютер.
Проблема, похоже, связана с сертификатом SSL, потому что, когда я могу получить доступ к серверу через внутренний URL-адрес и порт 8080
, все работает нормально.
Я попытался взломать категорию allowsAnyHTTPSCertificateForHost:
. Это не работало в симуляторе, а также на устройстве.
Там, кажется, официальный API, чтобы сделать это: How to use NSURLConnection to connect with SSL for an untrusted cert?
Однако, так как это только моя среда разработки я бы предпочел не менять свою базу кода на данный момент. Кроме того, я использую фреймворк для анализа моих данных, и мне, возможно, придется серьезно вмешаться в эту структуру, чтобы перейти к описанному выше API.
Так что мой вопрос: не следует ли устанавливать сертификат, а затем использовать сервер, как если бы имелся официальный сертификат SSL.
Hy Питер, я сделал это, и я установил галочку ** Verified ** на моем iPhone, но я все еще не могу подключиться к серверу. – Besi