Fiddler 抓包浅析(一)

本文是工具系列第一篇,后期会继续更新。web

Fiddler 工具浅析

Fiddler 是位于客户端和服务器端的 HTTP 代理,也是目前最经常使用的 HTTP 抓包工具之一。(Mac OS 建议采用 Charles)浏览器

它能够记录客户端和服务器之间的全部 HTTP 请求,并能够针对特定的 HTTP 请求,分析请求数据、设置断点、调试 web 应用、修改请求的数据,甚至能够修改服务器返回的数据,功能很是强大,是 web 调试和网络请求分析的利器。缓存

Fiddler 做为一个代理,天然客户端的全部请求都会先通过它,再转发给相应的服务器。反之,服务器端的全部响应,也都会先通过 Fiddler 而后发送给客户端。因此,Fiddler 支持全部能够设置 HTTP 代理为 127.0.0.1:8888 的浏览器和应用程序。服务器

Fiddler 界面解析

咱们不妨直接看到 Fiddler 的界面,能够看到不少不错的东西。 微信

这里是大概的主界面,因为内容涵盖仍是比较多,因此咱们分块解析。网络

Web Session 面板区域

web session 面板区域主要包含了每条 HTTP 请求(每一条称为 session),主要包含了请求的 url,状态码,body 等信息。session

  • # HTTP Request 的顺序,从 1 开始,按照页面加载请求的顺序递增。其中序列号列中通常还有图标,表明不一样的响应类型。具体类型包括: 工具

    图片来源于网络

  • Result HTTP 响应的状态。状态码解析请参考专业的 HTTP 书籍。测试

  • Protocol 请求使用的协议,如 HTTP/HTTPS/FTP 等。url

  • Host 请求地址域名。

  • URL 请求的服务器路径和文件名,也包括 GET 参数。

  • Body 请求的大小,单位为 byte。

  • Caching 请求的缓存过时时间或缓存控制 header 等值。

  • Content-Type 请求响应的类型(Content-Type)

  • Process 发出此请求的进程及进程 ID。

  • Comments 用户经过脚本或者右键菜单给此 session 增长的备注。

  • Custom 用户能够经过脚本设置的自定义值。

详情和数据面板区域

该区域基本是咱们必须关注的点,咱们能够在这个区域看到每条 HTTP 请求的具体数据统计和数据包分析。其中的 inspector 面板下的数据每每最受咱们的重视。

  • inspector

这里能够看到咱们请求的诸多数据,因为时间关系,咱们也就仅拿出其中的 Header 部分作讲解,其余部分同理。

上面的 Header 中包含了咱们常见的请求头,好比客户端的设备相关信息、Cookies、链接状态。

下面是咱们的响应头 Header,同时也包含了响应时间、过时时间、响应格式、数据包大小、链接状态等。

  • Composer

咱们常常在作一些接口测试的须要作一些骚操做,好比上传文件等,这个彻底不像 GET 请求那般能够直接带上咱们的参数在浏览器访问。这时候咱们又不想去写一个脚本。好伙计,Composer 正好知足了咱们的需求。

正如截图中样式,咱们能够设置请求方式、请求地址,参数、甚至是上传文件等,这一些请求咱们均可以模拟。

不得不感叹,确实黑科技。

一些其余菜单说明

  • Filters 强大的过滤机制 Fiddler 支持域名过滤,只须要在 Filters 里面设置便可。

过滤条件涵盖很是普遍,好比过滤特定 HTTP 状态码的请求、特定请求类型的 HTTP 请求等,更多的过滤方式还须要你们本身去挖掘。

  • 选择抓取区域
    能够选择是否支持 HTTPS,选择是否抓取全部进程的请求,仍是仅仅浏览器的请求,抑或是仅仅远程设备的请求,功能都是很是强大的。

一些必备的处理

  • 对于 Web 抓包 要想抓包到相应的数据,必须设置浏览器代理为 127.0.0.1:8888,不然没法捕获到 HTTP 请求。

  • 对于 HTTPS 的支持 默认状况下,Fiddler 是不支持直接查看 HTTPS 请求的,咱们必须在设备上安装它的证书。

这里姑且直接以抓取 Android 手机的 HTTPS 请求作示例。

  1. 首先设置 Fiddler。打开工具栏 => Tools => Fiddler Options => HTTPS

  2. 导出证书到手机。

  3. 直接在手机端安装。 在手机上安装证书这个操做,太多机型了,都不太同样,姑且你们自行百度。

我是南尘,只作比心的公众号,欢迎关注我。

作不完的开源,写不完的矫情。欢迎扫描下方二维码或者公众号搜索「nanchen」关注个人微信公众号,目前多运营 Android ,尽本身所能为你提高。若是你喜欢,为我点赞分享吧~
nanchen
相关文章
相关标签/搜索