Fiddler请求过滤

 

在上一篇:Fiddler抓包基本介绍,了解了如何抓取HTTPS请求以及APP请求。由于 Fiddler 会抓取所有的 HTTP 请求,这样会造成左侧会话的请求不断更新,对我们的调试造成干扰。因此可以通过过滤规则的设置,从而来过滤掉不需要的请求。

 

点击 Fiters 选项卡,勾选左上角的 Use Filters 即可开启过滤器:                     

 

Fiddler之Hosts过滤

域名过滤,通过配置只监听/或不监听域名

两个最常用的过滤条件是Zone 和 Host:

  • Zone:指定只显示内网(Intranet)或互联网(Internet)的内容

  • Host:指定显示某个域名下的会话

           

 

过滤内网主机/过滤外网主机,一般很少用到,主要使用No Host Filter进行过滤。

Hide the following Hosts:表示在输入框中,输入了哪些域名信息,就不过滤,不进行监听。如:选中此项,在输入框中,输入www.baidu.com时,此时请求www.baidu.com的请求都不会进行监听,在左侧的session面板中,将不会有www.baidu.com相关请求记录。

 

Show only the following Hosts:表示在输入框中输入了哪些域信息,就只监听这些域名,其他的域名将不进行监听。如:选中此项,在输入框中,输入www.baidu.com时,只有在访问www.baidu.com的请求才会进行监听,即左侧的sessson中只包含www.baidu.com的请求,其他的请求将不会监听显示。

 

Flag the following Hosts:表示在输入框中输入了哪些域名信息,在左侧的session面板中,这些配置的域名在监听到时,会加标识(如:加粗)如:选中此项,在输入框中输入www.baidu.com,在访问www.baidu.com时左侧的session面板中,会加标识(加粗)。

 

如只想显示百度的请求,那么在No Host Filter下拉框选择show only the following Hosts,然后输入www.baidu.com, 最后执行Actions-->Run Filterset now即可实现过滤 :  

             

再次请求时,发现只会接收host为www.baidu.com的请求:

             

 

Fiddler之Client Process过滤

 

进程过滤,通过配置,只监听/不监听哪些进程的请求

  • Show only traffic from:只显示来自选择进程后的请求

  • Show only Internet Exporer traffic:只显示来自IE的请求

  • Hide trafficfrom service host:隐藏来自service host的请求

 

为防止和Hosts过滤器有所冲突,注意先将Hosts过滤关闭。

 

Show only traffic from:指定抓取哪个Windows进程中的请求,比如选择chrome:14800                    

Show only Internet Explorer traffic:只显示IE发出的请求                      

 

Fiddler之Request Headers过滤

表示根据请求头信息,进行过滤

             

常用的功能是Show only if URL contains,比如想抓取URL中包含baidu.com的请求。                 

 

Fiddler之Break Points过滤

根据断点,进行配置过滤

  • Break request on HTTP POST :给所有POST请求设置断点

  • Break request on HTTP GET with QueryString :给所有带参数的GET请求设置断点

  • Response Status Code :响应码过滤规则

 

如使用Break request on HTTP GET with QueryString,那么带参数的get请求都会设置断点。

           

 

Fiddler之Response Status Code过滤

根据响应代码进行过滤:

  • Hide success(2xx):隐藏响应成功的请求(2xx);

  • Hide Authentication demands(401,407):隐藏未经授权被拒绝的请求(401,407);

  • Hide redirects(300,301,302,303,307):隐藏重定向的请求(300,301,302,303,307);

  • Hide Not Modified(304):隐藏无变更的请求(304);

 

比如想隐藏响应成功的请求:                      

 

Fiddler之Response Type and Size 过滤

根据响应类型和数据大小,配置过滤:

  •   Show all Content-Type:显示所有响应类型,下拉选择显示图片、HTML、json等类型;

  •   Hide smaller than ?KB:隐藏小于指定大小的请求;

  •   Hide larger than ?KB:隐藏大于指定大小的请求;

  •   Time HeatMap:获得即时数据(绿色阴影代表响应时间在50毫秒以内;超过50毫秒但在300毫秒之内的响应条目没有颜色;响应时间在300至500毫秒之间的会涂以黄色;超过500毫秒的用红色底纹显示);

  •   Block scriptfiles:阻止脚本文件,显示为404;

  •   Block image files:阻止图片文件;

  •   Block SWF files:阻止SWF文件;

  •   Block CSS files:阻止CSS文件;

 

比如想查看响应时间超过500毫秒的请求:                       

 

Fiddler之Response Headers 过滤

根据响应头信息,配置过滤

 

  • Flag response that set cookies:标记设置cookie的响应;

  • Flag response with headers:标记带有特定header的响应;

  • Delete response headers:删除响应header;

  • Set response header:设置响应的header;

 

比如想在响应中设置cookie,使用Set response header   

 

 

设置完成后,重新请求,响应头里会出现Set-Cookie: 123456                      


更多系列文章,可以关注微信公众号:ITester软件测试小栈


 

 



 

 

posted @ 2020-05-03 09:30  小胖虎vivi  阅读(654)  评论(0编辑  收藏  举报