使用Charles全方位抓包原生接口和Flutter接口,包括PC、Android模拟器、iOS模拟器

1,204 阅读2分钟

首先下载最新的Charles安装包,Charles下载地址 截屏2023-11-15 14.24.16.png 下载之后安装,然后设置Charles的代理,如下图

截屏2023-11-15 14.24.32.png

设置电脑端的网络代理

截屏2023-11-15 14.24.51.png

抓包PC端和浏览器的配置

1、电脑端下载安装Charles证书

在Charles的Help选项中选择SSL Proxying选项 -> Install Charles Root Certificate 截屏2023-11-15 14.26.53.png 2、选择信任该证书

截屏2023-11-15 14.30.34.png 3、配置SSL代理,这步配置完就可以开始抓包了 截屏2023-11-15 14.32.53.png

抓包Android模拟器的配置

1、首先在Charles中查看本地的IP地址,Help → Local IP Addresses,如果有多个使用第一个 截屏2023-11-15 14.38.12.png 2、打开安卓模拟器设置代理 截屏2023-11-15 14.42.03 (1).png 3、打开模拟器的浏览器,输入网址 chls.pro/ssl 即可自动下载,下载后直接安装即可。

提示:这个证书下载的很快,下载完也没有提示,这时你可以去下载内容里面去看下(图2),此时不能直接点击安装会有提示(图3),

根据提示我们去设置中安装,路径是 设置→ 安全→ 更多安全设置→ 加密与凭证→ 安装证书→ CA证书

截屏2023-11-15 14.42.03.png

截屏2023-11-15 14.43.24.png

截屏2023-11-15 14.44.31.png

截屏2023-11-15 14.45.37.png 4、经过上面三步之后,应该是可以抓包了,但是不能高兴的太早,此时只能抓安卓原生的接口和Flutter web的接口,你会发现Flutter Native的接口是抓不到的。

解决办法如下图,打开哆啦A梦,里面有个Flutter代理,设置第一步中的IP并开启。到此Android模拟器可以愉快抓包了。

截屏2023-11-15 14.53.59.png 截屏2023-11-15 14.54.55.png

抓包iOS模拟器的配置

1、打开模拟器的浏览器,输入网址 chls.pro/ssl 点击允许,下载配置文件 image2023-12-13_17-29-29.png image2023-12-13_17-31-11.png

2、打开设置->通用→VPN与设备管理,点击并安装刚刚下载的配置文件 image2023-12-13_17-32-28.png image2023-12-13_17-32-54.png 3、打开设置->通用→关于本机→证书信任设置, "针对根证书启用完全信任"按钮打开,iOS抓包配置完成. image2023-12-13_17-34-54.png