一、下载
1. 下载地址:Download a Free Trial of Charles • Charles Web Debugging Proxy
2. 选择对应的系统下载即可
二、电脑证书配置
1. 安装原因:如果不安装证书,抓取https的包会出现unknown的现象
2. 安装步骤:
- 打开Charles,在help->SSL Proxying->Install Charles Root Certificate,安装本地证书
- 钥匙串中,点击Charles的证书,改为始终信任
- 点击Proxy->SSL Proxying Settings,SSL Proxying标签中,选中Enable SSL Proxying,添加Location,Host填*,Port填443(如果客户端上有报错,可以将*.443去掉试一下)
三、使用说明
1. 抓取浏览器包
Charles如果勾选上Proxy->macOS Proxy,会默认抓取所有经过电脑的包,如果只想抓取浏览器的包,可以使用Chrome的switchyomega扩展程序管理和切换多个代理,具体下载配置和使用方法,可自行百度。
注意:代理协议选择HTTP,代理服务器填写127.0.0.1,代理端口可到Charles客户端查看(Help->SSL Proxying->Install Charles Root Certificate on a Mobile Device or Remote Browser)
2. 抓取手机端包
1. 安装证书
在客户端手动配置代理后,在浏览器中输入chls.pro/ssl会自动下载证书。
注意:安卓6以上的系统app默认不信任抓包证书,需要开发修改代码。大部分测试app安装包默认打开状态。mumu模拟器正好是安卓6。
四、代理原理
客户端向代理发起请求,代理转发给服务端,服务端将响应信息发送给代理,代理转发响应信息给客户端。
五、限速模拟(弱网测试)
1. 打开弱网测试 Proxy->Start Throttling
2. 设置网络环境 Proxy->Throttle Settings
六、mock
1. 使用rewrite修改请求和响应数据(Tools->Rewrite)
2. map local
1. 将响应数据保存到本地数据文件,右键save Response
2. 右键打开map local,选择修改的本地文件,重新发起请求