flutter 抓包工具charles

本来的代码是忽略证书

c 复制代码
    ///忽略https证书校验,也就是能请求https的地址了
    (_dio?.httpClientAdapter as DefaultHttpClientAdapter).onHttpClientCreate =
        (HttpClient client) {
      client.badCertificateCallback =
          (X509Certificate cert, String host, int port) => true;
      return client;
    };

实际上还是抓不了包,因为要填代理IP和端口号,且要支持证书信任(不加的话只能抓到http,不能抓到https)

c 复制代码
      (_dio?.httpClientAdapter as DefaultHttpClientAdapter).onHttpClientCreate = (client) {
        client.badCertificateCallback =
            (X509Certificate cert, String host, int port) => true;//证书信任
        client.findProxy = (Uri) {
          // 用1个开关设置是否开启代理
          Log.d('NetUtils _init=> ${Global.isProduction}  IP地址:PROXY ${SPHelper.getTextIp}:${SPHelper.getTextPort}');
          return !Global.isProduction ? 'PROXY ${SPHelper.getTextIp}:${SPHelper.getTextPort}' : 'DIRECT';
        };
      };

平时的测试包可以用上面这个代理方式给测试人员测试,当发版的时候要改会第一个校验

相关推荐
君穆南3 小时前
基于 NFS 与 Rsync 实现跨服务器 Seafile 数据平滑迁移实战
linux·运维·git
bloglin999993 小时前
scp、rsync远程文件同步
linux·运维·服务器
迦南的迦 亚索的索4 小时前
LINUX环境
linux·运维·服务器
yuanjj884 小时前
linux下调试域格CLM920 NC5等9x07平台模块 QMI拨号
linux·运维·服务器
IMPYLH4 小时前
Linux 的 printenv 命令
linux·运维·服务器·bash
SilentSamsara4 小时前
SSH 远程管理:密钥登录 + 隧道转发,一次性配置好
linux·运维·服务器·ubuntu·centos·ssh
Utopia^4 小时前
鸿蒙flutter第三方库适配 - 联系人备份工具
flutter·华为·harmonyos
LN花开富贵4 小时前
【ROS】鱼香ROS2学习笔记一
linux·笔记·python·学习·嵌入式·ros·agv
疏星浅月4 小时前
数据对齐的底层原理与性能优化
linux
Jurio.4 小时前
本机开发 + 多机执行的极简远端运行工具
linux·git·python·github·远程工作