Charles
是一个http
代理/http
监视器/反向代理工具,使开发人员能够查看其设备和互联网间所有http
和https
流量数据。这包括请求、响应和http
标头(其中包含Cookie
和Cache
信息)。
- 注册
Registered Name:
https://zhile.io
License Key:48891cf209c6d32bf4
基本配置
在 macOS 捕获数据
1 ) macOS 代理配置
Charles
可以自动配置macOS
系统代理设置,以便Safari
浏览器和其他macOS
应用程序自动开始使用。
2 ) macOS 证书配置
1)
Help
→SSL Proxying
→Install Charles Root Certificate
2)下载证书
3)信任证书
3 ) macOS 配置截图
在 iOS Simulator 捕获数据
1 ) Simulator 代理配置
依赖于
macOS
代理配置
2 ) Simulator 证书配置
1)退出重启
Charles
2)再运行Simulator
3)Help
→SSL Proxying
→Install Charles Root Certificate in iOS Simulators
3 ) Simulator 配置截图
在 iPhone 捕获数据
1 ) iPhone 代理配置
前往
设置
,选中Wi-Fi
,找到您连接的wifi网络;然后轻点右侧图标来配置网络;
向下滚动在
HTTP代理
选项,选择手动配置代理;1)在
服务器
字段中输入运行Charles的计算机IP地址(Help
→Local IP Address
)
2)在端口
字段中输入Charles正在运行的端口(默认为8888
)
3)将认证
设置为关闭
4)首次配置好代理后,退出iPhone
设置页面,退出Charles
5)重启Charles
弹框提示(点击Allow
允许授权)
2 ) iPhone 证书配置
1)手机
Safari
,输入https://chls.pro/ssl
(最好选择Safari,三方浏览器兼容性不好,可能打不开链接);
2)下载证书后,授权信任该证书,设置
→通用
→关于本机
→证书信任设置
点击
Allow
授权允许后,您的iPhoneIP
地址,将添加到Charles访问控制列表中,
您可以在以下路径中查看和更改Proxy
→Access control Settings
3 ) iPhone 配置截图
Proxy 配置 (※)
各设备配置好证书后,抓包前关键配置如下
1)
Proxy
→SSL Proxying Settings
2)选中SSL Proxying
选项卡
3)勾选 ☑️Enable SSL Proxying
4)通用配置,点击add
,键入此值Host(*)
、Port(*)
5)详细配置,点击add
,键入此值Host(待抓包主机名)
、Port(待抓包端口号)
抓包过滤配置
1)
Proxy
→Recording Settings
2)选中Include
选项卡,添加仅需要抓包URL
3)选中Exclude
选项卡,添加不需要抓包URL
功能使用
1 ) 窗口组成
1)左侧,导航栏
2)顶部,工具栏
3)主体,数据区
2 ) 单次重发
单次重新发送请求,可用于 Server 联调 API,仅在Charles内重发,不会在其它应用程序中看到UI变化
3 ) 多次重发
支持多次重发,设置间隔时间、重发次数、并发数,可用于压力测试
4 ) 编辑重发
编辑后发送请求,可编辑修改请求参数
5 ) 断点调试
断点拦截后发送请求,可修改调整入参及响应数据
6 ) 弱网调试
Proxy
→Throttle Settings
→Enable Throttling
7 ) Map重定向
Tools
→Map local
→Enable Map local
8 ) 过滤回话
Proxy
→Recording Settings
→Include
9 ) 搜索内容
Edit
→Find...
10 ) 导出数据
支持多种格式,导出回话数据
11 ) 启动时,是否开启,在macOS
端自动捕获数据
Proxy
→Proxy Settings
→macOS
12 ) Local IP Address
Help
→Local IP Address