接口自动化基础(二)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

导航栏介绍

img

img清除所有请求 img捕获请求开关,红色为开启状态 img停止/开启https代理

img 限速 img 断点 img 编辑请求 img 重发请求

SwitchyOmgega插件使用

使用代理可以后安装该插件,新建一个情景模式,配置如下: img

需要外网代理时上网时用系统代理,不需要外网代理使用直接代理,抓包时使用新建的情景模式“charles抓包模式”

img

筛选请求

单个请求筛选

直接左下角Filter中输入关键字即可
image

多个请求筛选

右键请求,点击Focus即可
image

限速模拟

Proxy–>Throttle Setting

img

默认限速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

img

Map Local 指定响应文件

作用:修改响应文件

ps:先做好一个接口的返回数据(一般右击响应,save response 到本地,修改完成后放在指定路径)

Tools-->Map Lacal

img

Rewrite 修改请求/响应信息

作用:替换请求/响应的某个字段

Tools-->Rewrite img

抓手机包

Android在7.0之后不再信任用户证书,想要通过代理来抓手机包的话,需要Android developer在代码中做一些修改

  • charles设置代理ssl请求
  • iOS设备需要和代理设备处在同一网段,设置手动代理,ip为代理设备ip,端口为charles端口(默认8888)
  • 之后打开撒佛瑞方法 chls.pro/ssl 下载一个描述文件
  • 然后去手机的设置页面安装描述文件
  • 之后charles会弹出一个允许远程设备连接的弹框,同意
posted @ 2021-08-13 10:45  寡淡的白开水  阅读(245)  评论(0)    收藏  举报