『言善信』Fiddler工具 — 12、Fiddler过滤器(Filters)详解

1、Filters介绍

Filters:过滤器,帮助我们过滤请求。

如果需要过滤掉与测试项目无关的抓包请求,更加精准的展现抓到的请求,而不是杂乱的一堆,那功能强大的 Filters 过滤器能帮到你。

总结:Filters过滤器的作用,过滤出我们想要的请求,不需要的请求忽略掉。

2、Filters界面说明

Filters界面如下图:

image

说明:

Use Filters(使用过滤):这个勾选之后,过滤器才会生效。

Actions(指定行为):四个选项说明

  • Run Filterset now:使用当前的过滤规则。
  • load Filterset:加载(以前保存的)过滤规则。
  • Save Filterset:保存当前的过滤规则(非常实用,如针对每个应用测试设置一套过滤规则)。
  • Help:会跳转到Fiddler帮助页面。

(1)Hosts:主机过滤

主机过滤下面有两个下拉框,第一个下拉框是过滤局域网,第二个下拉框是过滤广域网。(较常用)

局域网过滤:展示局域网内容

  • No Zone Filter:默认选项,不设置区域过滤器。
  • show only Intranet Hosts:只显示内网的Hosts,即过滤掉外网的Hosts。此时,只显示URL请求目标服务器在内网的请求。
  • show only internet Hosts:与上相对应,只显示外网的Hosts。

广域网过滤:展示广域网内容

  • No Host Filter:默认选项,不设置过滤主机IP条件。
  • Hide the following Hosts:隐藏输入到下面文本框中的Hosts。
  • Show only the following Hosts:仅显示输入到下面文本框中的Hosts。
  • Flag the following Hosts:标识下边输入的主机名的会话(加粗)。

说明:

只想显示 www.51ste.com的请求,则选中Show only the following Hosts ,并在下面输入框中填入 www.51ste.com即可。此时,哪怕是http://51ste.com的请求,也会被过滤掉,显示不出来。

(2)Client Process:客户端进程过滤

是对客户端的进程进行过滤,通过配置只过滤/不过滤哪些进程的请求。(用的不多)

  • Show only traffic from:你可以指定只显示哪个Windows进程中的请求,右侧会列出当前所有的 Windows 进程。
  • Show only Internet Explorer traffic:只显示IE发出的请求。
  • Hide trafficfrom service host:隐藏来自service host的请求。如果不勾选,会出现很多其他后台网络数据流。

(3)Request Headers :根据请求头信息进行过滤。

Request Headers:常用。

  • Show only if URL contains:仅显示URL中包含指定字符串的请求,字符串可以是URL中的一部分,多个字符串用空格分开。(多个表示 “或”,即只要URL包含任一字符串,都会显示),也可以使用EXACT:前缀来限定大小写,或者使用REGEX:前缀正则表达式或完整的URL。
  • Hide if URL contains:仅隐藏URL中包含指定字符串的请求(字符串可以是URL中的一部分,多个用空格分开, 可以是正则或完整的URL,同上)。
  • Flag requests with headers:标记带有特定header的请求,如果在web session列表中存在该请求,会加粗显示。
    例如,我想突出显示header信息中带有token字段的URL请求,即可以勾选上这项,并在后面输入:token。
  • Delete request headers: 删除请求中指定的Header字段。(在进行测试时非常有用,比如去掉URL中的token信息,判断服务器是否有做token校验)
  • Set request Header:在URL请求中添加头字段,与上一条对应。前面输入字段,后面输入值。

(4)Breakpionts:设置断点

很少用,毕竟可以通过bpubpafter以及改写规则js设置断点。

  • Break request on Post:针对所有Post请求设置断点。
  • Break request on GET with query string:给所有带参数的 GET 请求设置断点。
  • Break on XMLHttpRequest:针对所有Ajax请求设置断点。
  • Break response on Content-type:针对响应报文中header字段中,Content-Type属性匹配成功的请求设置断点。

(5)Response Status Code:响应状态码过滤

根据URL请求响应状态码进行过滤,用的不多。

  • Hide success(2xx):隐藏响应状态码为2xx的URL请求,如:响应状态码为200的URL请求将隐藏掉。
  • Hide non-2xx:隐藏响应状态码不是2xx的URL请求。
  • Hide Authentication demands(401,407):隐藏认证(响应状态码为:401 407)的URL
    请求。这些响应需要用户进一步确认证书,authentication demands是认证需求的意思。
  • Hide redirects(300,301,302,303,307):隐藏重定向(响应状态码为:300,301,302,303,07)的URL请求。
  • Hide Not Modifield(304):隐藏不是缓存的状态码(304)的URL请求。 304是请求的资源从上次起没有发生变更返回的状态码。

(6)Response Type and Size :根据响应类型和报文大小进行过滤

用的较少。

  • 下拉列表选择要显示的类型
    • Show all Content-Type:显示所有类型Content-Type的请求,Content-Type即为响应结果header信息中Content-Type字段。
    • Show only IMAGE/*:仅显示响应类型为图片的请求。
      即响应header中Content-Type=IMAGE/的请求,*为通配符。
    • Show only HTML:仅显示响应类型为HTML的请求。
    • Show only TEXT/CSS:仅显示响应类型为text/css的请求。
    • Show only SCRIPTS:仅显示响应类型为Scripts的请求。
    • Show only XML:仅显示响应类型为XML的请求。
    • Show only JSON:仅显示响应类型为Json的请求。
    • Hide IMAGE/*:隐藏所有响应类型为图片的请求。
  • Hide smaller than:隐藏小于指定大小响应结果的请求。
    大小可以在 Inpsectors 中响应结果部分的 Transformer 中查看。
  • Hide larger than:隐藏大于指定大小响应结果的请求。
  • Time HeatMap:时间的热图。
  • Block script files:阻止返回正常JS文件。如果响应是脚本文件,那么响应 404。
  • Block image files:阻止返回正常图片文件。如果响应是图片文件,那么响应 404。
  • Block SWF files:阻止返回正常SWF文件。如果响应是SWF 文件,那么响应 404。
    swf(shock wave flash):是Macromedia(现已被ADOBE公司收购)公司的动画设计软件Flash的专用格式。
  • Block CSS files:阻止返回正常CSS文件。如果响应是 CSS 文件,那么响应 404。

提示:这个功能可以测试CSS、JS等加载失败的情况下页面的展示情况。

(7)Response Header:根据响应头信息进行过滤

根据URL请求响应header信息进行过滤处理,用的较少。

  • Flag responses that set cookies:会话列表的响应中有cookies信息的加上标识(斜体)。
  • Flag responses with headers:会话列表里标记响应中带有特定header的请求(即加粗)。
  • Delete response headers:会话列表里删除响应信息中,有指定的Header字段的会话。
  • Set response header:在响应中添加header字段。
    如添加Transfer-Encoding: chunked,前面填写Transfer-Encoding,后面填写chunked

参考:http://www.51ste.com/share/det-925.html

posted @ 2021-06-15 10:36  繁华似锦Fighting  阅读(868)  评论(0编辑  收藏  举报