Fiddler AutoResponder 配置

配置項如圖

在這裏插入圖片描述

選項開關

Enable rules : 啓用匹配規則
Unmatched requests passthrough : 不匹配的請求會正常發送到服務器,這個一般要勾上,比如“baidu.com”由於匹配不上規則,如果不勾上則百度會訪問失敗。
Enable Latency : 延時選項,如果勾上,會多一列“Latency”的展示,然後在某條規則上點擊右鍵菜單“Set Latency”可以設置延時時間,用於調試時模擬服務器響應延時。

規則匹配順序調整

規則匹配優先從上到下:在某條規則右鍵,彈出菜單中的 Promote + 和 Demote - 分別可以上、下調整順序。
圖二

規則導出/導入

  • 圖二右鍵菜單的 Export All 可以導出所有規則配置,導出的是一個.farx後綴的文件,實際上是一個xml文檔。
<?xml version="1.0" encoding="utf-8"?>
<AutoResponder LastSave="2019-06-25T17:52:57.7451762+08:00" FiddlerVersion="5.0.20192.25091">
  <State Enabled="true" Fallthrough="true" UseLatency="false">
    <ResponseRule Match="regex:^http://(.*).xxx.com/api/(.*)$" Action="http://xxx.nat123.cc/api/$2" Enabled="true" />
    <ResponseRule Match="regex:^http://ide.xxx.com/(.*)$" Action="http://192.168.1.1:8080/$1" Enabled="true" />
    <ResponseRule Match="regex:^http://www.xxx.com/(\S*)$" Action="http://192.168.1.1:3000/$1" Enabled="true" />
    <ResponseRule Match="regex:^http://ide.xxx.com:8600/(\S*)$" Action="http://192.168.1.1:8080/$1" Enabled="true" />
  </State>
</AutoResponder>   
  • 圖一中的[Import.. ]按鈕 可以導入規則配置。

規則設置

在這裏插入圖片描述
點擊“Add Ruler”增加一個規則
第一個框,用於匹配url的表達式:可以是一個正則表達式,如 regex:^http://ide.xxx.com/(.*)$ ,也可以是一個普通字符串進行精確匹配 。
第二個框,匹配成功後跳轉的目的地址:可以是一個url,如 http://192.168.1.1:8080/$1,或者指定本地的某個文件 E:\test.html。

regex開頭:
表示後面是一個正則表達式,否則按照普通文本匹配,如:regex:^http://ide.xxx.com/(.*)$
參考 https://www.cnblogs.com/pachongshangdexuebi/p/6601363.html

關於正則表達式
如:^http://ide.xxx.com/(.*)$ 是一個正則表達式,
^ 表示從第一個字符開始匹配,
. 匹配除換行符(\n、\r)之外的任何單個字符,
* 匹配前面的子表達式零次或多次,
$ 表示匹配到結尾,
() 括號表示一個子正則表達式,
(.*) 匹配除換行符之外的任何字符零次或多次,
(.*)$ 匹配除換行符之外的任何字符零次或多次,一直匹配到結尾。

正則表達式語法參考 https://www.runoob.com/regexp/regexp-metachar.html

關於$1
表示匹配成功後,將目標字符串中的$1直接替換爲正則表達式中第1組子表達式匹配成功的內容(每一對括號表示一組子正則表達式,沒有括號的不算子表達式,$後面的數組可以理解爲表達式的索引),
如:$1、$2...$n 依次類推表示 第1組、第2組…第n組 子正則表達式 。
比如:^http://(\S*).xxx.com/(\d)$ , 有兩子組子正則表達式,第1組子表達式爲:(\S*),第2組表達式爲:(\d)。
比如 http://ide.xxx.com/abc 匹配 ^http://ide.xxx.com/(.*)$ 成功,第1組子表達式(.*)匹配的是abc,則目標地址http://192.168.1.1:8080/$1 中的 $1 會替換成abc ,即變爲:http://192.168.1.1:8080/abc

下圖的規則中有兩個子表達式(\S*)(.*)$2表示替換第二個子表達式(.*)的匹配字符
在這裏插入圖片描述

不在括號內的則不算是一個子表達式,如下截圖去掉括號後,\S*就不是子表達式了,只有(.*)纔是子表達式,因此目標串使用$1與上圖的$2等價
在這裏插入圖片描述

當然目標字符串的$1,$2等可以放任何位置,不一定放結尾,如: http://xxx.nat123.cc/$1/api/$2


參考:
https://www.cnblogs.com/tugenhua0707/p/4637771.html
https://blog.csdn.net/pc_gad/article/details/48194605











發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章