抓包工具 Charles 的基本使用

本贴最后更新于 1706 天前,其中的信息可能已经时过境迁

抓包工具 Charles 的基本使用

Charles 是一款运行在 PC 端 Web 代理工具,它支持 Windows,Mac,Linux 操作系统。通过配置代理,Charles 可以记录和展示我们的设备和 Internet 之间交流的所有数据。因此使用它我们可以调试分析我们的应用程序接口,抓取接口传输的数据。它主要具备如下特色功能:

  1. 支持 Https 协议

  2. 限制带宽,模拟延迟效果

  3. 支持 JSON 和 XML 格式化展示效果

  4. 树形展示数据消息

  5. 重发网络请求

  6. 更改网络请求参数

  7. 拦截请求和响应并且更改数据

  8. 支持网页代码 HTML,CSS 校验

大致认识 Charles 以后,我们可以到官网去下载自己操作系统对应的版本安装起来。我使用的 mbp 因此使用 Mac 的安装包,当然各个操作系统的发行版本功能是基本一致的。

打开 Charles

如下图所示。我用红框划出来了,1 是清理按钮,点击以后清除我们抓取到的记录。2 是开始记录按钮,未开始代理的情况下是灰色的,打开以后会变成红色的。旁边紧接是限制流量,断点,修改请求,重发请求,校验返回结果的功能按钮。
image.png

启动记录请求

我们点击第二个开始记录的按钮,观察左边的白色区域,如果发现请求会在左边展示出来。主意启动记录之前先要将 Charles 设置为电脑的全局代理,具体如下操作:
image.png

你可以观察到,我已经记录到了几个请求。

分析请求模块

如下图所示我们已经抓获到了大量的请求数据。
image.png

  1. 红框部分是请求按照域名分好组的记录,可以点击域名左边的小三角展开会显示出所有该域名下记录到的请求(当你知道你要记录的是哪个域名的服务后可以过滤掉其他域名的请求,只拦截自己关注的。)你应该注意到了,这一栏有 2 个 Tab 可以切换,我们当前使用的结构方式展示,你也可以选择 Sequence 这个 Tab 来展示,具体效果点点就知道咯,嘿嘿。

  2. 蓝框部分是对应的请求发送出去的数据,我们目前展示的 Contents Tab(基本使用这个 Tab 就够了),接着注意篮框底部的 Tab,我们目前展示的是 Headers Tab,这里展示了请求头信息,相信熟知 Http 协议的你,这几个 Tab 难不倒你,Text Tab 会展示请求体的信息,如果请求内容是 Json,那么 Charles 也会动态的展示出 Json Tab,在接下来的微博接口分析中你会看到。

  3. 绿框对应的是请求返回的数据,基本同发送出去的界面相同,只是数据一个是出去一个是进来。同样可以切换 Tab 查看请求的具体信息,如 Header, Body。

至此,Charles 的基本功能,以及简单使用已经介绍完啦,赶快去抓包的快感吧,接下来我们要稍微了解一下 Http 请求库 Requests 的使用。

以上内容为我们在 GitChat 平台上付费内容的截取,如果觉得不错欢迎订阅我的 Chat, 如果觉得费用贵可以留言给我获取免费的订阅,我有 10 个免费的分享名额,先到先到。
Chat 链接为 如何用程序来自动化发布,浏览微博?

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...