是证书问题导致,下面是强制认证


	import 'package:dio/dio.dart';
	import 'package:dio/adapter.dart';	// 导入这个包,添加DefaultHttpClientAdapter
	
	Response response;
    Dio dio = Dio();
    (dio.httpClientAdapter as DefaultHttpClientAdapter).onHttpClientCreate = (client) {
      client.badCertificateCallback = (cert, host, port) {
        return true;	// 返回true强制通过
      };
    };
    try {
      response = await dio.get(
        url,
        options: Options(
          headers: {},
        ),
      );
    } catch (e) {
      print('错误');
      print(e);
    }

证书验证

	import 'package:dio/dio.dart';
	import 'package:dio/adapter.dart';	// 导入这个包,添加DefaultHttpClientAdapter
	
    Dio dio = Dio();
	String PEM='XXXXX'; // 你的地址证书内容
	(dio.httpClientAdapter as DefaultHttpClientAdapter).onHttpClientCreate  = (client) {
	 client.badCertificateCallback=(X509Certificate cert, String host, int port){
	   if(cert.pem==PEM){ // 如果证书内容相同则验证通过
	     return true;
	   }
	   return false;
	 };
	};


Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐