Charles
Charles
参考:https://juejin.cn/post/6844903665304600589
(Charles是一个HTTP代理/HTTP监视器/反向代理,它使开发人员能够查看他们的机器和Internet之间的所有HTTP和SSL/HTTPS流量。这包括请求、响应和HTTP头(包含cookie和缓存信息)。)
是在 PC 端常用的网络封包截取工具,在做移动开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析。除了在做移动开发中调试端口外,Charles 也可以用于分析第三方应用的通讯协议。配合 Charles 的 SSL 功能,Charles 还可以分析 Https 协议。
Charles 通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析。
Charles是一款收费软件
Charles安装:
官网:https://www.charlesproxy.com/
Charles 主要提供两种查看封包的视图,分别名为 Structure
和 Sequence
。
- Structure: 此视图将网络请求按访问的域名分类。
- Sequence: 此视图将网络请求按访问的时间排序。
使用时可以根据具体的需要在这两种视图之前来回切换。请求多了有些时候会看不过来,Charles 提供了一个简单的 Filter
功能,可以输入关键字来快速筛选出 URL 中带指定关键字的网络请求。
Proxy 菜单
Charles 是一个 HTTP 和 SOCKS 代理服务器。代理请求和响应使 Charles 能够在请求从客户端传递到服务器时检查和更改请求,以及从服务器传递到客户端时的响应。下面主要介绍 Charles 提供的一些代理功能。Proxy 菜单的视图如下图所示:
Proxy 菜单包含以下功能:
- Start/Stop Recording:开始/停止记录会话。
- Start/Stop Throttling:开始/停止节流。
- Enable/Disable Breakpoints:开启/关闭断点模式。
- Recording Settings:记录会话设置。
- Throttle Settings:节流设置。
- Breakpoint Settings:断点设置。
- Reverse Proxies Settings:反向代理设置。
- Port Forwarding Settings:端口转发。
- Windows Proxy:记录计算机上的所有请求。
- Proxy Settings:代理设置。
- SSL Proxying Settings:SSL 代理设置。
- Access Control Settings:访问控制设置。
- External Proxy Settings:外部代理设置。
- Web Interface Settings:Web 界面设置。
如果使用 Firefox,也可以下载 Firefox 插件。
参考https://www.charlesproxy.com/documentation/configuration/browser-and-system-configuration/
Firefox不再需要一个插件来与Charles一起工作。相反,将Firefox配置为使用系统代理设置。
Charles 主要的功能包括:
- 截取 Http 和 Https 网络封包。
- 支持重发网络请求,方便后端调试。
- 支持修改网络请求参数。
- 支持网络请求的截获并动态修改。
- 支持模拟慢速网络。