fiddler几种功能强大的用法

Posted feiquan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了fiddler几种功能强大的用法相关的知识,希望对你有一定的参考价值。

http://caibaojian.com/fiddler.html

http://www.cnblogs.com/tangdongchu/p/4178552.html

1.fiddler过滤会话

问题:每次使用Fiddler, 打开一个网站,都能在Fiddler中看到几十个会话,看得眼花缭乱。

期望:只想抓取自己想要的请求

步骤:

技术分享图片

在Filers面板中勾选“Use Filters”,并在Hosts区域,设置以下三个选项:

1).第一项有三个选项,分别是 “No zone filter” “Show Only Intranet Hosts” “Show Only Internet Hosts”,不做更改;

2).第二项有四个选项,分别是:

No Host Filter”不设置hosts过滤 “;

Hide The Following Hosts”隐藏过滤到的域名 ;

“Show Only The Following Hosts”只显示过滤到的域名;

“Flag The Following Hosts”标记过滤到的域名;

选中“Show Only The Following Hosts”,在文本框内输入需要过滤的域名,多个域名使用”;“分号分割。fiddler默认会检查http头中设置的host,强制显示http地址中德域名。以“www.kugou.com”为例:

技术分享图片

2.Response乱码时的处理方法

问题:有时候我们看到Response中的HTML是乱码的, 这是因为HTML被压缩了, 我们可以通过两种方法去解压缩。

步骤:方法一:点击红框内容“Response body is encouded.Click to decode.”

技术分享图片

方法二:选中工具栏中的"Decode"。  这样会自动解压缩。

技术分享图片

3.反向代理-AutoResponder

原理:利用fiddler作為反向代理。意思就是将外界的request请求端口修改掉! 改写返回数据,最实用的功能!!!

步骤:

1)、用浏览器随意输入一个网址,如http://www.baidu.com/

2)、选中序号16记录,右击-勾选“Unlock fo Editing”,选择Fiddler右侧reponse块下的TextView,这里修改title,如图:

 技术分享图片

3).选择Fiddler右侧reponse块下的TextView,这里修改title,如图:

技术分享图片

4)、去掉“Unlock for Editing”,再选择右侧上方的AutoResponder,勾选下方的checkbox选框,并将序号16托到下方,同时,里面会多条记录,如下图:

技术分享图片

5).回到浏览器,刷新页面,如图,标题变为上面改的内容

 技术分享图片

4.fiddler提供了一个功能,让我们模拟低速网路环境…启用方法如:Rules → Performances → Simulate Modem Speeds

 技术分享图片

5.自己定义Modem Speeds 究竟要多快…点开Rules → Customize Rules

技术分享图片

 找m_SimulateModem这个字,你会找到下面这段:技术分享图片这就是他模拟网路速度的原理,每上传/下载1KB 要delay 多久。。。
技术分享图片
如果你习惯用kbps 去算的话,那么我们的算法就是 1000/下载速度 = 需要delay的时间(毫秒),比如50kb/s  需要delay200毫秒来接收数据。请注意,当你存档之后,原本已经勾选的Simulate Modem Speeds 会被取消勾选,要记得再到Rules → Performances → Simulate Modem Speeds 勾选喔~
6.用fiddler模拟404返回等操作
  

在客户端开发中,常常需要对一些特殊情况做处理,比如404、503等,又比如服务返回错误数据等。而测试这些情况会比较麻烦,往往都是找开发人员配合修改代码,这样效率不高。

接触到Fiddler之后,这样的情况一去不复返,我们可以很方便的通过Fiddler自带的AutoResponder工具模拟http响应。Fiddler的AutoResponder tab允许你从本地返回文件,而不用将http request 发送到服务器上。

下面来看教程:

1. 首先抓取客户端的http请求(参考另一篇文章Android/IOS手机使用Fiddler抓包和https://blog.csdn.net/qq_15283475/article/details/62224149)

2. 打开Fiddler 找到AutoResponder

3. 选择Enable automatic reaponses 和Unmatched requests passthrough

技术分享图片

4. 选中左侧捕捉到的http请求,然后点击Add Rule 

技术分享图片

5. 在下面的Rule Editor 下拉选择要模拟的响应类型,200、404、502等(也可以自己创建Response,选中Create New Response...,如果是要替换掉某些页面文件,选中Find a file).  最后点击Save 保存下。

技术分享图片

6. 建立规则后,向原url的请求,就变成了你所指定的响应,再去请求一下原url就能看到效果。

其中链接处用到了正则表达式

前缀为“EXACT:”表示完全匹配(大小写敏感)

无前缀表示基本搜索,表示搜索到字符串就匹配

前缀为“REGEX:”表示使用正则表达式匹配

前缀为“REGEX:(?insx)”表示匹配方式其中:

i表示不区分大小写;

n表示指定的唯一有效的捕获是显式命名或编号的形式;

s表示单行模式;

x表示空格说明的;

以上是关于fiddler几种功能强大的用法的主要内容,如果未能解决你的问题,请参考以下文章

Fiddler 高级用法:Fiddler Script 与 HTTP 断点调试

Fiddler高级用法-设置断点

Fiddler 实用功能总结

05_Fiddler的Script 脚本用法

Fiddler的灵活使用

Fiddler用法整理