Ошибка рукопожатия в клиенте: CERTIFICATE_VERIFY_FAILED Самоподписанный сертификат во флаттере - PullRequest
1 голос
/ 29 апреля 2020

Я отправляю запрос в https из моего приложения. так как там я использую самозаверяющий сертификат SSL на сервере, поэтому, когда я нажимаю на API, я получаю код состояния 405, что я не могу подключиться,

Если я использовал пакет HTTP, я получаю ниже исключение,

HandshakeException: Handshake error in client (OS Error: I/flutter ( 7107): CERTIFICATE_VERIFY_FAILED: self signed certificate(handshake.cc:352))

, когда я пытался с део-пакетом, я получаю код состояния 405, ниже приведен код для этого,

Response response;
    final Dio dio = Dio();
    (dio.httpClientAdapter as DefaultHttpClientAdapter).onHttpClientCreate =
    (HttpClient client) {
  client.badCertificateCallback =
      (X509Certificate cert, String host, int port) => true;
  return client;
};
  response = await dio.post(loginURL, data: {"username": username, "password": password});
  print(response.data.toString());
  print(response.statusCode);

Я попытался избежать рукопожатия SSL, сделав

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

Все еще не работает какое-либо другое решение?

...