使用 Charles Proxy 模拟慢网(弱网环境) 是一个非常实用的功能,尤其在调试 Web 页面、APP 启动、接口超时重试、用户体验优化时非常有帮助。下面是 详细的图文级操作步骤。
🧭 一、Charles 模拟慢网功能概览
Charles 提供的限速功能叫做:
Throttle Settings(带宽限速设置)
它可以让你模拟:
-
2G / 3G / 4G 网络
-
网络延迟(Latency)
-
网络抖动(Variance)
-
上传/下载限速(Throttle Rate)
🧰 二、详细操作步骤(共 4 步)
✅ 第一步:打开 Throttling(限速)功能
-
打开 Charles 主界面
-
点击菜单栏 →
Proxy
→ 勾选Throttle Settings
(⚠️ 默认是未开启)
✅ 此操作开启限速功能,但还没有配置限速参数。
✅ 第二步:配置限速参数
-
点击菜单栏 →
Proxy
→ Throttle Settings... -
弹出配置窗口后,设置如下参数:
参数 | 建议设置(以模拟 3G 网络为例) |
---|---|
Enable Throttling | ✅ 勾选 |
Throttle Rate (kbps) | 200 (即下载速度为 200 kbps) |
Throttle Upload (kbps) | 100 (即上传速度为 100 kbps) |
Round-trip Latency (ms) | 300 (模拟网络延迟) |
Round-trip Variance (ms) | 100 (网络抖动) |
Throttle only selected hosts | ❌(如只测试特定域名,可勾选) |
✅ 点击 OK 保存设置。
✅ 第三步(可选):指定哪些域名限速
如果你只希望对特定网站/接口限速,不影响其他请求:
-
勾选
Throttle only for selected hosts
-
点击
Add
→ 添加你要限制速度的域名,如:www.example.com api.yourapp.com
-
这样只有这些域名的请求才会受限速影响
✅ 第四步:开始测试
-
确保 Charles 处于抓包状态(Recording on)
-
确保
Proxy
→Throttle Settings
被勾选 -
在浏览器或 APP 中访问网站或接口
-
你会明显感受到:
-
页面加载变慢
-
图片/视频加载时间延长
-
接口超时或提示 loading 体验
-
🧪 示例参数参考(你可根据项目需要调整)
网络类型 | 下载速度(kbps) | 上传速度 | 延迟(ms) | 抖动 |
---|---|---|---|---|
2G | 50 | 30 | 500 | 150 |
3G | 200 | 100 | 300 | 100 |
4G | 1000 | 500 | 100 | 50 |
弱 WiFi | 300 | 200 | 200 | 100 |
🧩 小技巧 & 注意事项
-
✅ 不需要重启 Charles 即可切换限速参数
-
⛔ Charles 限速不会影响系统全局,只影响通过 Charles 代理的请求
-
⚠️ 有些 Mac 上,需确保你访问的 App 或设备流量已设置为通过 Charles(可使用 iOS 抓包配置)
-
✅ 可配合
Timeline
或Request Duration
观察接口耗时
🧭 Charles 模拟慢网 + 常见场景配合建议
目的 | 搭配功能 |
---|---|
模拟超时接口返回错误 | Throttle + Breakpoints |
模拟低网速图片加载 | Throttle + Contents Viewer |
测试 loading 动画 | Throttle + Replay |
多端测试 | Throttle + 手机连 Charles 抓包代理 |