打开浏览器访问 Charles 官网 ,下载相应系统的 Charles 安装包,然后安装即可:
- Windows: 运行安装应用程序以在程序菜单中安装 Charles。
- Mac OS X: 通过双击解压缩下载文件,然后将 Charles 应用程序复制到 Applications 目录中。
- Linux: Charles 拥有 APT 和 YUM 存储库,如果你有基于
Debian
或基于Red Hat
的 Linux 发行版,这是安装 Charles 的首选方法。否则,将tar.gz
文件解压缩到适当的站点。如果您以前安装过 Charles 并且正在进行升级;首先确保 Charles 没有运行,然后安装或复制在以前安上。通过运行bin/charles
脚本启动 Charles。
界面展示:
Charles 顶部为菜单导航栏,菜单导航栏下面为工具导航栏。视图如下图所示:
工具导航栏中提供了几种常用工具:
:清除捕获到的所有请求
:红点状态说明正在捕获请求,灰色状态说明目前没有捕获请求。
:灰色状态说明是没有开启网速节流,绿色状态说明开启了网速节流。
:灰色状态说明是没有开启断点,红色状态说明开启了断点。
:编辑修改请求,点击之后可以修改请求的内容。
:重复发送请求,点击之后选中的请求会被再次发送。
:验证选中的请求的响应。
:常用功能,包含了 Tools 菜单中的常用功能。
:常用设置,包含了 Proxy 菜单中的常用设置。
激活相关:
Charles License
- Registered Name:
https://zhile.io
- License Key:
48891cf209c6d32bf4
通过 Proxy =》SSL Proxying Settings 设置抓取来源 为 *.*
通过 Charles 进行 PC 端抓包
Charles 会自动配置浏览器和工具的代理设置,所以说打开工具直接就已经是抓包状态了。只需要保证一下几点即可:
- 确保 Charles 处于 Start Recording 状态。
- 勾选 Proxy | Windows Proxy 或 Proxy | MacOS Proxy。
通过 Charles 进行 HTTPS 抓包
HTTPS 的抓包需要在 HTTP 抓包基础上再进行设置。需要完成一下步骤:
- 完成 HTTP 抓包配置。
- 电脑端安装 Charles 证书:通过 Charles 的主菜单 Help | SSL Proxying | Install Charles Root Certificate 安装证书。
- 设置 SSL 代理:通过主菜单打开 Proxy | SSL Proxy Settings 弹窗,勾选
Enable SSL proxying
。 - 移动端安装 Charles 证书:通过 Charles 的主菜单 Help | SSL Proxying | Install Charles Root Certificate on a Mobile Device or Remote Browser 安装证书。
- 设置好之后,我们打开手机上的任意需要网络请求的程序,就可以看到 Charles 弹出手机请求连接的确认菜单(只有首次弹出),点击 Allow 即可完成设置。
- 完成以上步骤,就可以进行 HTTPS 抓包了。
通过 Charles 进行移动端抓包
手机抓包的原理,和 PC 类似,手机通过把网络委托给 Charles 进行代理与服务端进行对话。具体步骤如下:
-
使手机和电脑在一个局域网内,不一定非要是一个 IP 段,只要是在同一个路由器下即可。
-
电脑端配置:
- 关掉电脑端的防火墙(这点很重要)。
- 打开 Charles 的代理功能:通过主菜单打开 Proxy | Proxy Settings 弹窗,填入代理端口(端口默认为
8888
,不用修改),勾选Enable transparent HTTP proxying
。 - 如果不需要抓取电脑上的请求,可以取消勾选 Proxy | Windows Proxy 和 Proxy | Mozilla FireFox Proxy。
-
手机端配置:
- 通过 Charles 的主菜单 Help | Local IP Address 或者通过命令行工具输入
ipconfig
查看本机的 IP 地址。 - 设置代理:打开手机端的 WIFI 代理设置,输入电脑 IP 和 Charles 的代理端口。
- 通过 Charles 的主菜单 Help | Local IP Address 或者通过命令行工具输入
-
设置好之后,我们打开手机上的任意需要网络请求的程序,就可以看到 Charles 弹出手机请求连接的确认菜单(只有首次弹出),点击 Allow 即可完成设置。
-
完成以上步骤,就可以进行抓包了。