Ошибка SSL при попытке использовать соединение API в Swift - PullRequest
0 голосов
/ 29 марта 2020

Может кто-нибудь сказать мне, почему я получаю ниже ошибки подключения? Я могу получить доступ к URL API через браузер, но когда мое приложение пытается установить соединение, появляются ошибки. Это моя сеть? Нужен ли мне какой-нибудь сертификат на моей машине?

enter image description here

Ответы [ 2 ]

3 голосов
/ 29 марта 2020

Трассировка показывает, что соединение с openweathermap.org проходит через прокси-сервер безопасности ZScaler, который заменяет root CA для перехвата и анализа трафика c. Поскольку приложение root CA не является доверенным приложением для этого сайта, соединение не устанавливается. Для получения дополнительной информации см. Publi c Pinning Key (PKP) и Zscaler .

1 голос
/ 31 марта 2020

Я наконец-то исправил эту проблему, выполнив следующие шаги:

1. Установите Zscaler Root CA на симуляторе iOS и включите полное доверие

a. Экспортируйте Zscaler root CA из моей MA C связки ключей

b. Перетащите экспортированный сертификат в мой Xcode build в симуляторе iPhone (это запустит установку)

c. Go до (внутри симулятора) Общие настройки -> Настройки доверия сертификата и включение Полное доверие для Zscaler Root CA.

2. Добавьте NSAllowsArbitraryLoads в проекте Xcode

a. Добавить дополнительный ключ в конфигурационный файл info.plist проекта

<key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...