抓包神器之Charles,常用功能都在这里了(1)

发表于:2022-10-08 09:55

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:PandaCloud    来源:稀土掘金

  我们在开发网站项目的时候,我们可以通过浏览器的debug模式来看request以及response的数据,那么如果我们开发移动端项目没有网页呢?如何抓取数据呢?
  前几天有个做服务端的师弟跟我说他不用抓包工具,遇到问题直接debug代码,那我问他,如果线上服务的话,你怎么调?在实际项目中,没有遇到跟客户端相互扯皮的事情吗?我觉得很正常啊,客户端说他没问题,服务端也说他没问题,到底谁有问题?这时候没必要相互推脱,拿数据出来说话才是王道。抓包工具做了什么?它把客户端的请求数据,以及服务端返回的数据完完整整的抓取下来,供攻城狮分析问题。所以首先分析问题才是最重要的,而不是一上来就跟踪代码debug。
  Charles
  是一个HTTP代理服务器,HTTP监视器,反转代理服务器,当程序连接Charles的代理访问互联网时,Charles可以监控这个程序发送和接收的所有数据。它允许一个开发者查看所有连接互联网的HTTP通信,这些包括request,response和HTTPheaders(包含cookies与caching信息)。
  Charles主要功能:
  ·支持SSL代理。可以截取分析SSL的请求。
  · 支持流量控制。可以模拟慢速网络以及等待时间(latency)较长的请求。
  · 支持AJAX调试。可以自动将json或xml数据格式化,方便查看。
  · 支持AMF调试。可以将FlashRemoting或FlexRemoting信息格式化,方便查看。
  · 支持重发网络请求,方便后端调试。
  · 支持修改网络请求参数。
  · 支持网络请求的截获并动态修改。
  · 检查HTML,CSS和RSS内容是否符合W3C标准。
  Charles安装:
  去Charles的官方网站(http://www.charlesproxy.com)下载最新版的相应操作系统的Charles安装包安装即可。
  Charles是收费软件,可以免费试用30天。试用期过后,未付费的用户仍然可以继续使用,但是每次使用时间不能超过30分钟,并且启动时将会有10秒种的延时。
  因此,该付费方案对广大用户还是相当友好的,即使你长期不付费,也能使用完整的软件功能。只是当你需要长时间进行封包调试时,会因为Charles强制关闭而遇到影响。(偷偷告诉你,公众号回复“Charles”获取破解版下载链接)
  Charles的功能很强大,我们这里只介绍几个常用的并且非常实用的功能:
  1. 将Charles设置成系统代理
  2. 截取移动设备上的网络请求包
  ·手动重复请求(Repeat,AdvancedRepeat)
  · 手动模拟请求(Compose)
  · 修改网络请求内容(Compose)
  3. 过滤网络请求
  4. 代理转发
  5. 支持https请求抓包(如果配置了还是抓不到,下面有解决方案)
  Charles主要提供两种查看封包的视图,分别名为“Structure”和“Sequence”。
  1. Structure视图将网络请求按访问的域名分类。
  2. Sequence视图将网络请求按访问的时间排序。
  下面将一一介绍这些如何配置和使用:
  一.将Charles设置成系统代理
  Charles是通过将自己设置成代理服务器来完成抓包的,勾选系统代理后,系统本地发出去的请求都能被截取下来。如果只抓取APP的包的话,可关闭此配置,这样不会出现太多的数据看着比较乱。
  Mac:
  Windows:
  需要注意的是,Chrome和Firefox浏览器默认并不使用系统的代理服务器设置,而Charles是通过将自己设置成代理服务器来完成封包截取的,所以在默认情况下无法截取Chrome和Firefox浏览器的网络通讯内容。如果你需要截取的话,在Chrome中设置成使用系统的代理服务器设置即可,或者直接将代理服务器设置成127.0.0.1:8888也可达到相同效果。
  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号