Flutter HTTPS Ошибка рукопожатия в клиенте (Ошибка ОС: CERTIFICATE_VERIFY_FAILED: хорошо (handshake.cc:363)) - PullRequest
0 голосов
/ 28 февраля 2019

Коллега дал мне проект Flutter, чтобы попытаться создать приложение в iOS (я использую Mac, мы оба используем Android Studio).Все в порядке, за исключением этой ошибки:

Handshake error in client (OS Error: CERTIFICATE_VERIFY_FAILED: ok(handshake.cc:363))

Если я использую HTTP вместо HTTPS, это, очевидно, работает.Мой коллега сказал, что решил, добавив следующую строку кода:

client.badCertificateCallback = (X509Certificate cert, String host, int port) => true;

Эта строка кода также есть в моем проекте, потому что источник такой же.Так почему же он работает на Android, а не на iOS?

Ответы [ 2 ]

0 голосов
/ 28 февраля 2019

это должно работать на ios, если вы добавили эту строку

client.badCertificateCallback = (X509Certificate cert, String host, int port) 
=> true;

, поэтому дважды проверьте, что вы используете тот же экземпляр клиента для вашего запроса, и что вы делаете запрос после того, как вы установилипараметр badCertificateCallback

0 голосов
/ 28 февраля 2019

Проверьте ваш сертификат https, который вы используете, я думаю, что iOS имеет более строгие меры, чем Android, когда речь идет о соединении https.Чтобы быть в безопасности, попробуйте обновить сертификат сервера.

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