1、AutoResponder介紹
Fiddler的AutoResponder功能 ,是將HTTP請求攔截下來,重定向到本地文件或者指定響應(yīng)結(jié)果,實現(xiàn)自動重定向的功能。 不管我們做URL重定向,還是做Mock測試、本地js調(diào)試等,都可以通過該功能進行實踐。
AutoResponder面板如下圖:

2、AutoResponder界面說明
我們依照下圖,來詳細說明AutoResponder界面。

Fiddler can return previously generated responses instead of using the network.
Fiddler可以返回生成的響應(yīng),而不使用網(wǎng)絡(luò)。
(1)選項:
Enable rules:啟用規(guī)則。勾選此選項,自動響應(yīng)器才會激活。
-
Unmatched requests passthrough:沒有匹配到的請求予以通過。
建議開啟,沒開啟時,規(guī)則匹配外的請求將失敗,報HTTP 404錯誤。
說明:如果不勾選此選項,抓包的時候,會返回
[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.意思是:Fiddler的自動響應(yīng)器激活了,但是請求沒匹配到任何列表中的規(guī)則。而且因為跳過非匹配請求選項沒有激活,所以產(chǎn)生了
http/404返回結(jié)果。 -
Enable Lagency:延遲響應(yīng)時間,單位 ms(毫秒)。
勾選了該選項,則在規(guī)則里面就可以設(shè)置,立即返回響應(yīng),還是隔多少毫秒返回響應(yīng)。
Accept all CONNECTS:允許所有連接。
推薦:我們在適用Fiddler的時候,一般都會勾選Enable rules和Unmatched requests passthrough選項。
(2)按鈕:
Add rule:添加規(guī)則,點擊此按鈕則,會在規(guī)則框里插入一條新的規(guī)則。import:支持導入之前捕獲的.saz文件。-
Group:對列表中所創(chuàng)建的規(guī)則進行分組。在列表中選中一些規(guī)則,點擊
Group按鈕,就會把這些規(guī)則進行單獨分組,選中需要合并的組,點擊
Ungroup,就可以進行解組。
(3)Rule Editor(規(guī)則編輯):
-
第一行:是設(shè)置匹配條件。點開下拉,會看到很多Fiddler自帶的匹配條件。
即:填寫要匹配劫持的地址。
-
第二行:是設(shè)置返回。點開下拉,會看到很多Fiddler自帶的返回值類型。
即:就是劫持后真正要訪問的地址,或者返回的結(jié)果。
說明:
1)第一個文本框的前綴有三種:
前綴為“EXACT:”表示完全匹配(大小寫敏感)。
無前綴表示基本搜索,表示搜索到字符串就匹配。
-
前綴為“REGEX:”表示使用正則表達式匹配。
前綴為
REGEX:(?insx)表示匹配方式其中:i表示不區(qū)分大小寫;n表示指定的唯一有效的捕獲是顯式命名或編號的形式;s表示單行模式;x表示空格說明的;
使用說明:
(1)純粹字符串匹配
Fiddler將會按照不區(qū)分字母大小寫來匹配字符串。
如下:

(2)前綴NOT匹配
跟上面的類似,F(xiàn)iddler還有一個非字符串匹配的規(guī)則:
NOT:該規(guī)則會匹配url中不含給定字符的所有請求。
如下:

(3)前綴EXACT匹配(精確匹配)
表達式以EXACT:為前綴,此匹配區(qū)分字母大小寫。

(4)前綴REGEX匹配
正則表達式:Fiddler支持以regex:為前綴的正則表達式語法,
使用.+匹配一個或多個字符,
使用.*匹配0個或多個字符,
使用^匹配字符串開始位置,
使用$匹配字符串結(jié)尾位置。
如下:

注意:
選項字符串(?insx)的功能如下:
它會啟動大小寫敏感限制,要求顯示捕獲組,支持單行語義,支持使用#符號添加注釋。
2)第二個文本框是設(shè)置Fiddler內(nèi)置的響應(yīng)。
可以重定向請求,也可以替換返回結(jié)果。
包括不同的響應(yīng)狀態(tài)碼。
Find a file....:找到一個文件作為響應(yīng)。
設(shè)置響應(yīng)字符串使用介紹:

返回的actiontext如下

提示:標藍色區(qū)域的內(nèi)容為平時較常用的部分。
(4)test(測試):
-
點擊
Test...,會彈出如下窗口,用來測試匹配條件的。
測試URL匹配正則表達式,很實用的功能。
當測試的URL匹配正則正確,則綠色標識,反之錯誤紅色標識。
第一行:url pattern設(shè)置匹配公式。(也就是要匹配的url)第二行:
test url設(shè)置測試的網(wǎng)址。(也就是要重定向的url)點擊
Save Chages,則會將條件替換Rule Editor的第一行內(nèi)容。
Match only once(只匹配一次):勾選此選項,那么自動響應(yīng)就只會響應(yīng)一次。Save(保存):按鈕可以在更改了規(guī)則之后,更新規(guī)則。
(5)規(guī)則框:
規(guī)則框有四個列,下面解釋每個列的意思:
if requests matches:這里顯示的是匹配的條件,即要攔截的地址。then response with:這里顯示的是如果匹配條件,返回的文件或要訪問的地址。latency:這里顯示的是延遲時間(毫秒),只有勾選了Enable latecy選項才會展示出來。
規(guī)則框右鍵菜單:
| 選項 | 說明 |
|---|---|
| Remote(del) | 移除規(guī)則 |
| promote(+) | 將選中的規(guī)則向上移動 |
| demote(-) | 將選中的規(guī)則向下移動 |
| clone | 克隆一個選中規(guī)則到規(guī)則框(就是在添加一個相同的規(guī)則) |
| Set latency | 設(shè)置響應(yīng)延遲時間(毫秒) |
| Set Comments | 設(shè)置一個注釋,來提示當前規(guī)則的作用 |
| Edit Response | 編輯當前規(guī)則設(shè)置的響應(yīng)文件(當響應(yīng)文件是文本文件時) |
| Generate File | 將response body保存到本地.txt文件 |
| Open Url | 使用默認的網(wǎng)頁瀏覽器打開匹配條件中的網(wǎng)址 |
| Find | 在規(guī)則框中尋找字符串,找到會高亮顯示所在規(guī)則欄 |
| Export All | 導出處當前規(guī)則為.farx文件(Fidder AutoResponder XML)
|
參考:
