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)过滤

- 其他功能用到了在整理。