接口自动化基础(二)charles抓包
优秀代理工具必备特性
- 代理功能:http/https、socks5
- 请求模拟工具:拼装请求、重放请求、重复请求
- 网络环境模拟:限速、超时、返回异常
- mock:请求修改、响应修改
- 代理工具推荐:Charles、mitmproxy、burpsuite
使用配置
- 端口号:Proxy->Proxy Settings
- 查看ip:Help->Local IP Address
- 抓请求:proxy -> windows proxy
- 抓https请求:proxy -> SSL Proxy Settings
- 安装证书:Help -> ssl proxy -> Install Charles Root Certificate
导航栏介绍
清除所有请求
捕获请求开关,红色为开启状态
停止/开启https代理
限速
断点
编辑请求
重发请求
SwitchyOmgega插件使用
使用代理可以后安装该插件,新建一个情景模式,配置如下:
需要外网代理时上网时用系统代理,不需要外网代理使用直接代理,抓包时使用新建的情景模式“charles抓包模式”
筛选请求
单个请求筛选
直接左下角Filter中输入关键字即可

多个请求筛选
右键请求,点击Focus即可

限速模拟
Proxy–>Throttle Setting
默认限速56kb,可修改;在导航栏点击小乌龟可快速开启限速。
Map Remote 重定向接口地址
设置好之后可将某一个接口指向另一个环境的接口,如,接口脚本使用Charles代理,可以随便切环境跑。
适用场景:
1、WEB待上线功能测试(连接开发机)
2、模拟异常返回(4xx、5xx等)
3、右键需要代理的请求,选择map remote,在map to中填写对应的4xx、5xx网页地址即可。4xx、5xx网页地址可借助在线工具http://www.mocky.io 生成。
如:https://ds.gateon.cn/sys/sysUser/login --> https://preds.mengbaige.com/sys/sysUser/login
Tools-->Map Remote
Map Local 指定响应文件
作用:修改响应文件
ps:先做好一个接口的返回数据(一般右击响应,save response 到本地,修改完成后放在指定路径)
Tools-->Map Lacal
Rewrite 修改请求/响应信息
作用:替换请求/响应的某个字段
Tools-->Rewrite
抓手机包
Android在7.0之后不再信任用户证书,想要通过代理来抓手机包的话,需要Android developer在代码中做一些修改
- charles设置代理ssl请求
- iOS设备需要和代理设备处在同一网段,设置手动代理,ip为代理设备ip,端口为charles端口(默认8888)
- 之后打开撒佛瑞方法 chls.pro/ssl 下载一个描述文件
- 然后去手机的设置页面安装描述文件
- 之后charles会弹出一个允许远程设备连接的弹框,同意

浙公网安备 33010602011771号