文章目录
- charles的两种查看方式
- 修改请求参数
- 压力测试(Repeat Advanced)
- map local(用户修改请求结果)
- map remote(用于修改服务端)
- 连接手机
- 查看已连接的手机
- 限速
- Charles支持抓http、https协议的请求,https需要下载证书
- 手机安装证书备注
charles的两种查看方式
structure(结构体)
sequence(序列)
修改请求参数
- Edit
右键选择Edit
修改参数请求参数后点Execute - Rewrite
动态修改 request/response 信息
改变的只是部份信息,比如:主机地址( Host ),返回状态码( response status),返回信息内容( body )等:
压力测试(Repeat Advanced)
- 通过多次重复请求进行实现
对需要压测的请求右键选择Repeat Advanced(重复 高级)
填入重复执行的次数和并发数
Itreations:循环次数
Concurrency:并发次数
Delays,请求与请求之间的间隔时间 - 注意:并发代表是统一时间内请求多少次,比如设置循环6次,每次并发3条,则会分2次,每次并发3条去向服务端进行请求(需要注意的是,如果循环次数不是并发次数的整数倍,则不会触发所有的请求,如设置循环次数为10,并发条数为3,那么最终只会发起9次请求)
map local(用户修改请求结果)
- 先将请求结果复制下来,保存到本地txt文件,然后修改txt文件的内容
,再将请求接口map到该文件 - 方法一
- 对应的接口右键选择map local
- 清空map from的query
- 在map to中选择需要map的本地文件
- 方法二
- 在tools中选择map local,新建(Add)或者导入map文件(Import)
- map from
protocol:http
host:url的前段(例如 jxq-api.kwai.com)
port:80
path:url中除http://host:80以外的部分(例如 /rest/o/kwik*) - map to
在map to中选择需要map的本地文件
map remote(用于修改服务端)
- 方法一
- 对应的接口右键选择map remote
- 在map to输入对应数据
protocol:http
host:对应的url
port:80
- 方法二
- 在tools中选择map remote,新建(Add)或者导入map文件(Import)
- map from
protocol:http
host:*
port:80
path:url中除http://:80以外的部分(例如 /rest/o/kwik) - map to
protocol:http
host:对应的url
port:80
- 注意:可以使用通配符来进行简单的批量匹配,达到批量重定向的目的
连接手机
- 方法1
- 设置手机端网络代理
点击WiFi-修改网络-高级选项
代理:手动
代理服务器主机名:电脑ip
代理服务器端口:8888 - charles与手机端的连接提示弹窗,选择allo
如果没有收到连接提示可以去proxy-Access Control Settings中添加
- 方法2
- 让所有设备无需询问直接连接电脑的方式
在proxy-Access Control Settings中添加一个0.0.0.0/0的IP
查看已连接的手机
proxy-Access Control Settings
点击remove可删除
限速
proxy-throttle settings-勾上enable throttling-选择限速-点击ok
Throttling.xml(先导入限速文件)
Charles支持抓http、https协议的请求,https需要下载证书
抓取https请求方法
方法一:下载证书
方法二:关闭‘ssl proxying’
手机安装证书备注
- 必须手机先连上电脑的代理
- 必须先电脑安装证书
- 手机下载证书后,需要安装
- ios安装证书后,证书还需要信任