mac下配置Charles抓包工具,以及无法抓包的原因
关闭代理
- 关闭代理! 关闭代理! 关闭代理! 重要的事情说三遍
- 如果是已经启动的
Charles
以后才关闭的代理,请重新关闭macOS Proxy
,然后在打开
安装
Charles官网下载安装包:https://www.charlesproxy.com/download/
配置Charles抓取web请求
- 安装
Charles
证书到mac
- 启动Charles,选择Help–>SSL Proxying→Install Charles Root Certificate
- 此时会启动“钥匙串访问”APP,并找到刚开安装好的证书,证书名字:Charles Proxy CA,找不到的可以搜索框搜下。
- 双击证书,点击显示简介
- 更改证书信任权限。更改为始终信任,并关闭窗口输入密码保存。
- 复制粘贴该证书到“系统”里面。此时电脑端的证书就配置完毕了
- 设置HTTPS端口抓包,点击Charles–>Proxy–>SSL Proxying Settings,出现如下弹窗,点击”Enable SSL Proxying”,点击“Add”
- 添加http[:80]/https[:443] 通配域名,也可以指定抓取的域名
- 至此,配置
Charles
抓取web请求配置完成
常见问题
- 确认
Charles
配置,是否开启 macOS Proxy,也就是系统代理,另外有一点需要注意,如果你的Charles
已经启动了才关闭的代理,需要重新关闭 macOS Proxy,然后在开启下,别问我怎么知道的,手动旺财.jpg - 确认
Charles
是否开启抓取,Proxy -> start recording - 抓取设置,是否添加了相应抓取域名,或者通配域名,请查看
Charles
配置教程 - 如果是https请求,证书问题,查看证书是否信任
- 确认本地网络代理设置,最好设置成http/https代理(因为如果不手动设置其他代理软件,可能会自动配置代理,导致设置不生效问题),代理服务器可查看自己的
Charles
设置,默认:127.0.0.1:8888
当Charles
启动时,查看相关对口是否启动代理服务器进程(macOS命令:lsof -i :8888 | grep Charles) - 浏览器代理插件设置,如:SwitchyOmega等相关代理插件,要设置为系统代理或者新增情景模式为 Charles代理
上面的所有问题都检查一遍,我相信应该能解决您的问题了!!!!!