Charles 抓包神器:深度解析网络数据传输的秘密
简介
Charles 是一款跨平台的代理工具。Mac、window、linux 都可以使用。
![](https://static001.geekbang.org/infoq/c0/c0c961518b7544c13b74146da5b53b53.png)
它通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络数据包的截取和分析。
Charles 主要的功能包括:
支持 SSL 代理
支持流量控制
支持重发网络请求,方便后端调试
支持修改网络请求参数
支持网络请求的截获并动态修改
可以自动将 json 或 xml 数据格式化,方便查看
Charles 基本使用
安装
Charles 官网:https://www.charlesproxy.com/
![](https://static001.geekbang.org/infoq/b6/b675124b29e2dab201489f1285cc63eb.jpeg?x-oss-process=image%2Fresize%2Cp_80%2Fauto-orient%2C1)
界面介绍
![](https://static001.geekbang.org/infoq/53/530ea2a49cafcb449bb108f92f12bc8a.png)
菜单栏
![](https://static001.geekbang.org/infoq/e1/e1a8ef015de3313ea482434f3f66bb25.png)
File:session 相关操作。
Edit:基础复制粘贴之类的操作。
View:选择要查看的界面。
proxy
抓包:recording
抓 https 包:ssl proxying
网络限速:throttling
断点:breakpoint
系统代理功能:macOS/Windows
tools
map remote:请求转发,修改响应
map local:请求映射至本地数据
rewrite:重写修改请求与响应
主导航栏
![](https://static001.geekbang.org/infoq/b9/b9d4c711216ef7e3bd2dec43eede0792.png)
左侧
![](https://static001.geekbang.org/infoq/21/21864c29e96de40d0a1cde47b4683695.png)
Structure:视图将网络请求按访问的域名分类。
Sequence:视图将网络请求按访问的时间排序。
右侧
![](https://static001.geekbang.org/infoq/ec/ec55e0da5ad684f7f9d81fb8457bb386.png)
展示的是某一接口的请求内容,可以切换导航栏查看请求的各种详细情况。例如:请求响应时间,请求头,请求详细内容,请求体等各种情况。
Overview:会展示该请求的一个大体情况,例如:请求头,请求响应结束时间,请求开始时间以及自己的 notes 等
Content:如上图所示的该请求的具体内容和服务器的相应内容(配合下面的导航栏进行查看该请求的具体内容 header,cookies,选择呈现方式 form, raw)
Summary:也是展示一个该请求的大体资源分布情况。例如:服务器响应了多长时间,host 是什么等等
Chart:以表格形式告诉我们一个响应时间的分布情况。
Notes:已经很清楚了,点击之后自己可以对该请求记录一些东西,方便后续查看该接口的用途,可在 overview 中查看
总结
工具介绍
安装
界面介绍
软件测试开发免费视频教程分享
![](https://static001.geekbang.org/infoq/58/58152e2f4fb18fdea84b634fb7afe33e.png)
版权声明: 本文为 InfoQ 作者【测试人】的原创文章。
原文链接:【http://xie.infoq.cn/article/044051a5d94d905d65be83b5b】。文章转载请联系作者。
评论