Filters是fiddler中用于过滤请求报文的一个功能。当我们使用fiddler去抓取报文的时候,有很多数据报文并非是我们想要的 。我们就可以通过Filters设置过滤到无用的数据包。
功能入口
以下是Filters入口,通过勾选Filters前的复选框,设置过滤条件,要使过滤条件生效,需点击Actions-Run Filterset now。
设置过滤
功能介绍
设置过滤条件有很多,但通常会用到如下三个选项 。
Hosts
- Hide the following Hosts:隐藏以下主机。选择此选项,文本框内配置的主机地址将被fiddler隐藏掉,不会在列表中展示请求报文。
- Show only the following Hosts:仅显示以下主机。选择此选项,fiddler将只显示文本框配置的主机地址 ;如果配置多个主机地址,中间用分号(;)隔开。
- Flag the following Hosts:标记以下主机。选择此选项,文本框内配置的主机将被通过主机不同颜色标记出来。个人比较喜欢这个功能,不仅可以显示所有请求包,也可以将关注的报文区别开来。如下图。
设置host过滤条件
request Headers
以下都是复选框,可以组合使用。
- show only if URL contains:仅显示包含URL部分的报文
- Hide if URL contains :隐藏包含URL部分的报文
- Flag requests with headers :显示设置的请求头报文
- Delete requests headers:删除请求中某个请求头信息
- Set request headers:设置某个请求头信息。
设置request过滤条件
Breakpoints
以下选项都跟断点有关,当请求报文符合了其中一个选项后,请求暂停,我们可以编辑其中断点的报文,修改其请求参数或相应数据,最终返回的响应是我们修改后的数据。
- Break request on POST:遇到POST请求暂停。
- Break request on GET with query string :遇到GET请求且是查询字符串的报文时暂停
- Break on XMLHttpRequest :遇到XMLHttpRequest的请求报文时暂停
- Break response on Content-Type :遇到是设置的响应报文时暂定。
设置BreakPoints过滤
案例实现
通过以上的了解,我们一般通过以上条件的组合过滤,就能快速精准的找到我们想要的请求报文。
案例需求:
通过fiddler抓包禅道网站,期望只展示禅道内测试模块的页面或接口,并将无用的请求头过滤掉,只保留关注的请求头信息 。
实现步骤:
- 选择Hosts-Show only the follwing Hosts,在文本域中输入demo.zen;
- 选择Request Headers-Show only if URL contains,在文本框中输入36.html。
- 选择Request Headers-Delete request headers,在文本框中输入要删除的请求头 。
组合设置过滤
说在最后,小编整理了一套fiddler教程,简单易懂,而且实用。有喜欢的小伙伴可以加关注,并私信回复【fiddler】来获取吧,请大家多多点赞评论转发哦。