gacvd 发表于 2017-7-8 06:27:01

Mac 下抓包工具 Charles 修改特定请求

  Charles 是 Mac 下常用的抓包工具,它通过将自己设置成系统的代理服务器,从而完成了抓包的工作。
  同类的工具还有 fiddler 和 Wireshark,其中 fiddler 是微软公司使用 .NET 开发的工具,适用于 Windows 操作系统,虽然通过 mono 框架使其可以在 Mac 上安装,但类似于网页通过 Cordova 生成混合应用,混合应用的性能和原生应用相差很大,fiddler 的 Mac 版本存在更新慢,卡顿等问题。Wireshark 可以在 Windows 和 Mac 上运行,不足的一点是不能对特定的请求进行修改,fiddler 的 fiddler script,Charles 的 rewrite 可以实现这个功能。
一、将 Charles 配置为代理服务器
  1、在 Charles 的 Settings -> Proxy Settings -> Mac OS X 下,进行如下配置

  2、在 系统偏好设置 -> 网络 -> 高级 -> 代理 下,进行如下配置

  此时 Charles 被配置为系统的代理服务器。
  ps:在调试网页时,Chrome 默认使用系统代理服务器,如果需要在浏览网页时使用其他的代理服务器,可以在火狐浏览器的 首选项 -> 高级 -> 网络 -> 连接设置 上手动配置代理或选择 pac 文件。
二、对特定请求进行修改
  在 Charles 的 Tools -> Rewrite 下,可配置修改特定请求的规则,如下图:

  Name:规则名称
  Locations:可添加多个远程服务器的信息,包括协议,域名,端口号等信息。
  Rules:设置修改的规则,可使用正则表达式进行修改,如下图:

三、参考链接

[*]  Charles 功能介绍 By 唐巧
页: [1]
查看完整版本: Mac 下抓包工具 Charles 修改特定请求