如何在flutter中绕过SSL证书验证?

Har*_*med 4 ssl ssl-certificate dart flutter flutter-dependencies

如何在flutter中绕过SSL证书验证?

错误:握手异常:客户端中的握手错误(操作系统错误:CERTIFICATE_VERIFY_FAILED:自签名证书(handshake.cc:345)

wxk*_*kly 5

您似乎使用的是自签名证书,操作系统不信任该证书。您可以按照以下步骤将其设置为受信任:

HttpOverrides创建一个按以下方式重写的类:

class MyHttpOverrides extends HttpOverrides {
  @override
  HttpClient createHttpClient(SecurityContext? context) {
    return super.createHttpClient(context)
      ..badCertificateCallback = (X509Certificate cert, String host, int port) {
        //add your certificate verification logic here
        return true;
      };
  }
}
Run Code Online (Sandbox Code Playgroud)

然后,在您的 main 方法中,实例化您的类并将其设置为全局 HttpOverride:

HttpOverrides.global = MyHttpOverrides();
Run Code Online (Sandbox Code Playgroud)

如果badCertificateCallback返回,true它将接受所有不良证书;如果返回 false 它将拒绝错误的证书。

关联。/sf/answers/4638798951/