1、AutoResponder介绍
Fiddler的AutoResponder
功能 ,是将HTTP请求拦截下来,重定向到本地文件或者指定响应结果,实现自动重定向的功能。 不管我们做URL重定向,还是做Mock测试、本地js调试等,都可以通过该功能进行实践。
AutoResponder
面板如下图:
2、AutoResponder界面说明
我们依照下图,来详细说明AutoResponder
界面。
# 提示:
# Fiddler可以返回生成的响应,而不使用网络。
Fiddler can return previously generated responses instead of using the network.
(1)选项:
- Enable rules:启用规则。勾选此选项,自动响应器才会激活。
-
Unmatched requests passthrough:没有匹配到的请求予以通过。
建议开启,没开启时,规则匹配外的请求将失败,报HTTP 404错误。
说明:如果不勾选此选项,抓包的时候,会返回:
意思是:Fiddler的自动响应器激活了,但是请求没匹配到任何列表中的规则。而且因为跳过非匹配请求选项没有激活,所以产生了[Fiddler] The Fiddler AutoResponder is enabled, but this request did not match any of the listed rules. Because the "Unmatched requests passthrough" option on the AutoResponder tab is not enabled, this HTTP/404 response has been generated.
http/404
返回结果。 -
Enable Lagency:延迟响应时间,单位 ms(毫秒)。
勾选了该选项,则在规则里面就可以设置,立即返回响应,还是隔多少毫秒返回响应。 - Accept all CONNECTS:允许所有连接。
推荐:我们在适用Fiddler的时候,一般都会勾选Enable rules和Unmatched requests passthrough选项。
(2)按钮:
-
Add rule
:添加规则,点击此按钮则,会在规则框里插入一条新的规则。 -
import
:支持导入之前捕获的.saz
文件。 -
Group
:对列表中所创建的规则进行分组。
在列表中选中一些规则,点击Group
按钮,就会把这些规则进行单独分组,
选中需要合并的组,点击Ungroup
,就可以进行解组。
(3)Rule Editor(规则编辑):
- 第一行:是设置匹配条件。点开下拉,会看到很多Fiddler自带的匹配条件。
即:填写要匹配劫持的地址。 - 第二行:是设置返回。点开下拉,会看到很多Fiddler自带的返回值类型。
即:就是劫持后真正要访问的地址,或者返回的结果。
说明:
1)第一个文本框的前缀有三种:
- 前缀为“EXACT:”表示完全匹配(大小写敏感)。
- 无前缀表示基本搜索,表示搜索到字符串就匹配。
- 前缀为“REGEX:”表示使用正则表达式匹配。
前缀为REGEX:(?insx)
表示匹配方式其中:i
表示不区分大小写;n
表示指定的唯一有效的捕获是显式命名或编号的形式;s
表示单行模式;x
表示空格说明的;
使用说明:
(1)纯粹字符串匹配
Fiddler将会按照不区分字母大小写来匹配字符串。
如下:
(2)前缀NOT匹配
跟上面的类似,Fiddler还有一个非字符串匹配的规则:
NOT:该规则会匹配url中不含给定字符的所有请求。
如下:
(3)前缀EXACT匹配(精确匹配)
表达式以EXACT:为前缀,此匹配区分字母大小写。
(4)前缀REGEX匹配
正则表达式:Fiddler支持以regex:为前缀的正则表达式语法,
使用.+
匹配一个或多个字符,
使用.*
匹配0个或多个字符,
使用^
匹配字符串开始位置,
使用$
匹配字符串结尾位置。
如下:
注意:
选项字符串(?insx)的功能如下:
它会启动大小写敏感限制,要求显示捕获组,支持单行语义,支持使用#符号添加注释。
2)第二个文本框是设置Fiddler内置的响应。
可以重定向请求,也可以替换返回结果。
- 包括不同的响应状态码。
-
Find a file....
:找到一个文件作为响应。
设置响应字符串使用介绍:
返回的actiontext
如下
提示:标蓝色区域的内容为平时较常用的部分。
(4)test(测试):
- 点击
Test...
,会弹出如下窗口,用来测试匹配条件的。
测试URL匹配正则表达式,很实用的功能。
当测试的URL匹配正则正确,则绿色标识,反之错误红色标识。
第一行:url pattern
设置匹配公式。(也就是要匹配的url)
第二行:test url
设置测试的网址。(也就是要重定向的url)
点击Save Chages
,则会将条件替换Rule Editor
的第一行内容。 -
Match only once(只匹配一次)
:勾选此选项,那么自动响应就只会响应一次。 -
Save(保存)
:按钮可以在更改了规则之后,更新规则。
(5)规则框:
规则框有四个列,下面解释每个列的意思:
-
if requests matches
:这里显示的是匹配的条件,即要拦截的地址。 -
then response with
:这里显示的是如果匹配条件,返回的文件或要访问的地址。 -
latency
:这里显示的是延迟时间(毫秒),只有勾选了Enable latecy
选项才会展示出来。
规则框右键菜单:
选项 | 说明 |
---|---|
Remote(del) |
移除规则 |
promote(+) |
将选中的规则向上移动 |
demote(-) |
将选中的规则向下移动 |
clone |
克隆一个选中规则到规则框(就是在添加一个相同的规则) |
Set latency |
设置响应延迟时间(毫秒) |
Set Comments |
设置一个注释,来提示当前规则的作用 |
Edit Response |
编辑当前规则设置的响应文件(当响应文件是文本文件时) |
Generate File |
将response body 保存到本地.txt 文件 |
Open Url |
使用默认的网页浏览器打开匹配条件中的网址 |
Find |
在规则框中寻找字符串,找到会高亮显示所在规则栏 |
Export All |
导出处当前规则为.farx 文件(Fidder AutoResponder XML)
|
参考: