Charles 相关总结
0.Charles 简介
Charles 是一款功能强大的 HTTP 代理服务器、HTTP 监视器和反转代理服务器,它可以帮助开发者和测试人员监控和分析 HTTP 和 HTTPS 网络通信。Charles 支持多种操作系统,包括 Windows、MacOS、iOS 和 Android。
主要功能如下:
- HTTP 和 HTTPS 代理:Charles 可以捕获和分析 HTTP 和 HTTPS 请求和响应。
- 流量控制:可以模拟不同的网络条件,如弱网测试。
- 接口并发请求:支持同时处理多个网络请求。
- 重发网络请求:方便开发者测试和调试。
- 断点调试:结合 Python 的 Flask 等工具进行 Mock Server 开发。
- 支持反向代理:可以将请求转发到不同的服务器。
- 网络限速:模拟不同网络类型下的应用表现。
- 解析 AMF 协议:支持解析高级消息格式协议。
1.Charles 的下载安装
下载网址 https://www.charlesproxy.com/download/
根据自己操作系统,选择相应版本下载后,安装即可。
这个是学习使用必备地址:
https://www.zzzmode.com/mytools/charles/
2.PC 端抓包
- Web 抓取 HTTPS 协议
1️⃣Charles 不能直接抓取 https 协议的请求,需要安装 SSL 证书:
2️⃣输入密码:

3️⃣双击证书,信任证书
4️⃣Proxy
➡️SSL Proxying Settings
, Add
添加相应端口。(记得勾选 Enable SSL Proxying
, 截图中为标出)
5️⃣打开 Charles
代理(Proxy
➡️macOS Proxy
),测试抓 PC 端包。
3. 移动端抓包
总体思路,移动端下载 Charles 证书➡️移动安装 Charles 证书➡️移动端信任 Charles 证书,不同的手机可能位置不同。
(0)在 Charles 中,查看自己 IP 地址和端口号和下载证书网址
Help
➡️SSl Proxying
➡️Install Charles Root Certificate on a mobile Device or Remote Browser
- ip 地址:端口号为:
192.168.XX.XX:8888
- 下载证书网址:
chls.pro/ssl
(1)IOS
1️⃣连接网络(与 Charles 相同网络,并已打开 Charles)
2️⃣配置 Charles
代理。
3️⃣浏览器填写证书下载地址 chls.pro/ssl
,
- 点击
允许

- 点击
安装

4️⃣设置
➡️通用
➡️关于本机
➡️证书信任设置
,信任证书。

然后就可以愉快的抓包了。
(2)Android
原理与 IOS 相同,也是在浏览器上下载证书,然后安装证书,然后信任证书。这里就不截图举例了。
4. 其他问题。
(1)在手机浏览器上登录 chls.pro.ssl
, 无法下载证书。
1️⃣Charles
菜单栏上点击 Help
➡️SSLProxying
➡️Save Charles Root Certificate..
2️⃣下载证书(cer 和 pem 两个格式都下载一下)
3️⃣然后将下载好的证书发送到手机,安装即可。
- ios 可以试试
隔空投送
- 有些版本的 Android 可能装不上
.pem
的证书,可以试试.cer
的证书。
5. 常用功能。
(1)过滤
- 其他功能用到了在整理。