Charles安装与功能介绍
字数 2867 2025-08-11 22:57:16

Charles 网络封包截取工具全面教学指南

一、Charles 简介

Charles 是一款功能强大的网络封包截取工具,主要用于开发调试和网络协议分析。相比 BurpSuite,Charles 更易上手且界面直观。

主要功能

  • 截取 HTTP 和 HTTPS 网络数据包
  • 支持重发网络请求,方便后端调试
  • 支持修改网络请求参数
  • 支持截获并动态修改网络请求
  • 支持模拟慢速网络环境

授权信息

Charles 是收费软件,提供 30 天免费试用。试用期过后仍可继续使用,但有如下限制:

  • 每次使用时间不超过 30 分钟
  • 启动时有 10 秒延迟

二、安装与激活

下载安装

  1. 访问官网:https://www.charlesproxy.com/latest-release/download.do
  2. 选择对应操作系统的版本下载
  3. 按照提示完成安装

激活方法

注册信息:

Registered Name: https://zhile.io
License Key: 48891cf209c6d32bf4

三、主界面与菜单介绍

主界面工具栏

  1. 清除按钮:清除所有捕获的请求
  2. 捕获状态:红色表示正在捕获,灰色表示未捕获
  3. SSL 代理:停止 SSL 代理
  4. 网速节流:灰色表示未开启,绿色表示已开启
  5. 断点模式:灰色表示未开启,红色表示已开启
  6. 编辑请求:修改请求内容
  7. 重复请求:再次发送选中的请求
  8. 验证请求:验证选中的请求响应
  9. 购买许可证:跳转至官网购买
  10. 常用功能:包含 Tools 菜单中的常用功能
  11. 常用设置:包含 Proxy 菜单中的常用设置

数据包视图

  • Structure:按访问域名分类
  • Sequence:按访问时间排序
  • Filter:输入关键字快速筛选请求

会话右键功能

  • Repeat/Repeat Advanced:重复执行请求(可指定遍数)
  • Focus:将选中域名置顶
  • Block List:将域名加入黑名单
  • Export:导出会话到本地
  • Compare:对比两个请求的入参和出参
  • Compose:编辑请求并执行
  • Map Remote:重定向到另一个请求的返回值
  • Map Local:使用本地文件内容作为返回值

四、Proxy 菜单详解

1. 录制设置 (Recording Settings)

  • Options:限制记录数据大小
  • Include:只录制匹配地址的请求
  • Exclude:不录制匹配地址的请求

2. 节流设置 (Throttle Settings)

  • 启用网速模拟配置
  • 预设网络类型选择
  • 可针对特定 hosts 设置慢速网络

3. 断点设置 (Breakpoint Settings)

  • 启用断点模式
  • 设置监控的 Scheme、Protocol、Host 和 Port
  • 可观察或修改返回内容

4. 反向代理设置 (Reverse Proxies Settings)

  • 在本地端口创建 Web 服务器
  • 透明地将请求代理给远程服务器
  • 可查看原本无法访问的流量

5. 端口转发 (Port Forwarding Settings)

  • 配置 TCP/IP 或 UDP 端口转发
  • 可调试任何协议

6. macOS 代理

  • 勾选可记录计算机所有请求
  • 取消勾选则只抓取移动端请求

7. 代理设置 (Proxy Settings)

  • 默认端口 8888(可修改)
  • 启用透明 HTTP 代理

8. SSL 代理设置 (SSL Proxy Settings)

  • 启用 SSL 代理
  • 可针对特定 Host 和 Port 启用

9. 访问控制 (Access Control Settings)

  • 控制谁可以使用 Charles
  • 默认 localhost 始终在访问列表中
  • 可添加允许访问的 IP

10. 外部代理 (External Proxy Settings)

  • 配置 Charles 使用现有代理访问 Internet
  • 可单独配置 HTTP、HTTPS、SOCKS 代理

11. Web 界面 (Web Interface Settings)

  • 启用 Web 界面控制 Charles
  • 可设置用户名和密码
  • 访问地址:http://control.charles
  • 功能包括:节流控制、录音控制、工具管理、会话控制等

五、Tools 菜单详解

1. 禁用缓存 (No Caching Settings)

  • 防止客户端缓存资源
  • 可全局启用或仅对特定请求启用

2. 禁用 Cookie (Block Cookies Settings)

  • 阻止 Cookie 的发送和接收
  • 可测试无 Cookie 环境

3. 远程映射 (Map Remote Settings)

  • 根据配置映射更改请求站点
  • 支持目录、文件、文件模式映射
  • HTTP 和 HTTPS 可互相映射

4. 本地映射 (Map Local Settings)

  • 使用本地文件内容作为返回值
  • 加快开发和测试速度

5. 重写 (Rewrite Settings)

  • 修改请求和响应的规则
  • 可添加/修改头信息、搜索替换内容

6. 黑名单 (Black List Settings)

  • 阻止黑名单域名的所有请求
  • 支持通配符阻止子域名

7. 白名单 (White List Settings)

  • 只允许白名单域名的请求
  • 其他请求将被阻止

8. DNS 欺骗 (DNS Spoofing Settings)

  • 指定主机名到 IP 地址的映射
  • 优先使用配置的 DNS 映射

9. 镜像 (Mirror Settings)

  • 克隆响应内容保存到本地
  • 保持与站点相同的目录结构

10. 自动保存 (Auto Save Settings)

  • 按时间间隔自动保存会话
  • 避免内存不足问题
  • 文件名包含时间戳(yyyyMMddHHmm)

11. 客户端进程 (Client Process Settings)

  • 显示发出请求的本地进程名称
  • 可发现未知的 HTTP 客户端

12. 其他工具

  • Compose:编辑修改请求
  • Repeat:重复发送请求
  • Repeat Advanced:高级重复(可设置迭代次数和并发数)
  • Validate:通过 W3C 验证器验证响应
  • Publish Gist:将请求/响应发布为要点
  • Import/Export Settings:导入/导出 Charles 设置
  • Profiles:管理配置文件的完整副本

六、实用技巧

  1. 过滤请求:使用 Focus 功能或 Include/Exclude 设置
  2. 调试 HTTPS:启用 SSL 代理并安装 Charles 根证书
  3. 性能测试:使用 Throttle 模拟不同网络环境
  4. 前后端联调:使用 Map Local 或 Map Remote 快速测试
  5. 自动化测试:通过 Web 界面实现自动化控制

七、注意事项

  1. 长时间监控时注意内存使用情况,可设置自动保存
  2. 修改请求时注意请求超时问题
  3. 使用 SSL 代理需要客户端信任 Charles 证书
  4. 生产环境谨慎使用,避免敏感信息泄露

通过本指南,您应该能够全面掌握 Charles 的各项功能,并应用于实际的开发和测试工作中。

Charles 网络封包截取工具全面教学指南 一、Charles 简介 Charles 是一款功能强大的网络封包截取工具,主要用于开发调试和网络协议分析。相比 BurpSuite,Charles 更易上手且界面直观。 主要功能 截取 HTTP 和 HTTPS 网络数据包 支持重发网络请求,方便后端调试 支持修改网络请求参数 支持截获并动态修改网络请求 支持模拟慢速网络环境 授权信息 Charles 是收费软件,提供 30 天免费试用。试用期过后仍可继续使用,但有如下限制: 每次使用时间不超过 30 分钟 启动时有 10 秒延迟 二、安装与激活 下载安装 访问官网:https://www.charlesproxy.com/latest-release/download.do 选择对应操作系统的版本下载 按照提示完成安装 激活方法 注册信息: 三、主界面与菜单介绍 主界面工具栏 清除按钮 :清除所有捕获的请求 捕获状态 :红色表示正在捕获,灰色表示未捕获 SSL 代理 :停止 SSL 代理 网速节流 :灰色表示未开启,绿色表示已开启 断点模式 :灰色表示未开启,红色表示已开启 编辑请求 :修改请求内容 重复请求 :再次发送选中的请求 验证请求 :验证选中的请求响应 购买许可证 :跳转至官网购买 常用功能 :包含 Tools 菜单中的常用功能 常用设置 :包含 Proxy 菜单中的常用设置 数据包视图 Structure :按访问域名分类 Sequence :按访问时间排序 Filter :输入关键字快速筛选请求 会话右键功能 Repeat/Repeat Advanced :重复执行请求(可指定遍数) Focus :将选中域名置顶 Block List :将域名加入黑名单 Export :导出会话到本地 Compare :对比两个请求的入参和出参 Compose :编辑请求并执行 Map Remote :重定向到另一个请求的返回值 Map Local :使用本地文件内容作为返回值 四、Proxy 菜单详解 1. 录制设置 (Recording Settings) Options :限制记录数据大小 Include :只录制匹配地址的请求 Exclude :不录制匹配地址的请求 2. 节流设置 (Throttle Settings) 启用网速模拟配置 预设网络类型选择 可针对特定 hosts 设置慢速网络 3. 断点设置 (Breakpoint Settings) 启用断点模式 设置监控的 Scheme、Protocol、Host 和 Port 可观察或修改返回内容 4. 反向代理设置 (Reverse Proxies Settings) 在本地端口创建 Web 服务器 透明地将请求代理给远程服务器 可查看原本无法访问的流量 5. 端口转发 (Port Forwarding Settings) 配置 TCP/IP 或 UDP 端口转发 可调试任何协议 6. macOS 代理 勾选可记录计算机所有请求 取消勾选则只抓取移动端请求 7. 代理设置 (Proxy Settings) 默认端口 8888(可修改) 启用透明 HTTP 代理 8. SSL 代理设置 (SSL Proxy Settings) 启用 SSL 代理 可针对特定 Host 和 Port 启用 9. 访问控制 (Access Control Settings) 控制谁可以使用 Charles 默认 localhost 始终在访问列表中 可添加允许访问的 IP 10. 外部代理 (External Proxy Settings) 配置 Charles 使用现有代理访问 Internet 可单独配置 HTTP、HTTPS、SOCKS 代理 11. Web 界面 (Web Interface Settings) 启用 Web 界面控制 Charles 可设置用户名和密码 访问地址:http://control.charles 功能包括:节流控制、录音控制、工具管理、会话控制等 五、Tools 菜单详解 1. 禁用缓存 (No Caching Settings) 防止客户端缓存资源 可全局启用或仅对特定请求启用 2. 禁用 Cookie (Block Cookies Settings) 阻止 Cookie 的发送和接收 可测试无 Cookie 环境 3. 远程映射 (Map Remote Settings) 根据配置映射更改请求站点 支持目录、文件、文件模式映射 HTTP 和 HTTPS 可互相映射 4. 本地映射 (Map Local Settings) 使用本地文件内容作为返回值 加快开发和测试速度 5. 重写 (Rewrite Settings) 修改请求和响应的规则 可添加/修改头信息、搜索替换内容 6. 黑名单 (Black List Settings) 阻止黑名单域名的所有请求 支持通配符阻止子域名 7. 白名单 (White List Settings) 只允许白名单域名的请求 其他请求将被阻止 8. DNS 欺骗 (DNS Spoofing Settings) 指定主机名到 IP 地址的映射 优先使用配置的 DNS 映射 9. 镜像 (Mirror Settings) 克隆响应内容保存到本地 保持与站点相同的目录结构 10. 自动保存 (Auto Save Settings) 按时间间隔自动保存会话 避免内存不足问题 文件名包含时间戳(yyyyMMddHHmm) 11. 客户端进程 (Client Process Settings) 显示发出请求的本地进程名称 可发现未知的 HTTP 客户端 12. 其他工具 Compose :编辑修改请求 Repeat :重复发送请求 Repeat Advanced :高级重复(可设置迭代次数和并发数) Validate :通过 W3C 验证器验证响应 Publish Gist :将请求/响应发布为要点 Import/Export Settings :导入/导出 Charles 设置 Profiles :管理配置文件的完整副本 六、实用技巧 过滤请求 :使用 Focus 功能或 Include/Exclude 设置 调试 HTTPS :启用 SSL 代理并安装 Charles 根证书 性能测试 :使用 Throttle 模拟不同网络环境 前后端联调 :使用 Map Local 或 Map Remote 快速测试 自动化测试 :通过 Web 界面实现自动化控制 七、注意事项 长时间监控时注意内存使用情况,可设置自动保存 修改请求时注意请求超时问题 使用 SSL 代理需要客户端信任 Charles 证书 生产环境谨慎使用,避免敏感信息泄露 通过本指南,您应该能够全面掌握 Charles 的各项功能,并应用于实际的开发和测试工作中。