美文网首页Flutter&Dart
哥哥教你解决Flutter中原生HttpClient,第三方Ht

哥哥教你解决Flutter中原生HttpClient,第三方Ht

作者: 哥哥是欧巴Vitory | 来源:发表于2019-07-15 10:10 被阅读6次

    Flutter请求Https出现问题如下:

     报错原因就是证书不被信任,那么为了解决这个问题就需要强行信任:

    步骤一:

    如果你使用的是Flutter中自带的Httpclient,那么代码如下:

    HttpClient client = HttpClient();

    //badcertificatecallback 返回值为true就可以解决问题了

    client.badCertificateCallback = callback(X509Certificate cert, String host, int port){ return true; }

    var request = await client.getUrl(Uri.parse("https://wxpay.wxutil.com/pub_v2/app/app_pay.php"));

    步骤二:

    如果你使用的是第三方的http包,遇到这个问题可以通过以下方式解决:

    import 'dart:io';

    import 'package:http/http.dart' as http;

    bool _certificateCheck(X509Certificate cert, String host, int port) =>

        host == 'devblog.paypal.com';

    http.ClientpaypalClient(){

      var ioClient = new HttpClient()

          ..badCertificateCallback = _certificateCheck;

      return new http.IOClient(ioClient);

    }

    为其设置一个IOCliient既可以解决了。

    但Flutter一直在更新,所以IOClient被移动了。

    import'package:http/io_client.dart';

    varioClient =newHttpClient() 

     ..badCertificateCallback = _certificateCheck;

     _client = IOClient(ioClient);

    相关文章

      网友评论

        本文标题:哥哥教你解决Flutter中原生HttpClient,第三方Ht

        本文链接:https://www.haomeiwen.com/subject/ddegkctx.html