1. 程式人生 > >web除錯工具-Fiddler斷點設定(二)

web除錯工具-Fiddler斷點設定(二)

在上次的Fiddler使用介紹(一)中,介紹了Fiddler工具的基礎頁面和功能,以及相關的設定。本貼將介紹Fiddler更強大的斷點設定。
一、Fiddler斷點設定

    設定斷點是Fiddler最強大的功能之一,在設定好斷點後,Fiddler會捕捉所有經過的訊息,我們可以任意修改HTTP請求資訊,包括Host、Cookies或表單的資料。可以設定斷點修改request,也可以設定斷點修改response,有兩種方法來設定。

(1)設定斷點修改request


    方法1:通過選擇“Rules”--“Automatic Breakpoints”選單,選擇斷點的插入點“Before Request”,即在客戶機發出請求時攔截請求訊息,暫時不傳送到伺服器上。這種設定對客戶機發出的所有請求都進行攔截

    方法2:通過Fiddler命令進行斷點設定。可以只攔截命令制定的請求。如需要對www.baidu.com請求進行攔截,可以執行命令“bpuwww.baidu.com”。所有發往www.baidu.com的請求都將會被攔截,而訪問其他網站則不會被攔截。取消可使用命令“bpu”。
    請求一旦被攔截,此時網站就處於阻塞狀態。在會話列表中選擇被攔截的網站,在左側會自動跳轉到“Inspectors”模組中。
    例如:開啟fiddler工具,使用命令“bpuwww.sina.com.cn”對發往新浪網站的請求進行攔截,然後開啟瀏覽器訪問新浪,此時fiddler回話列表會出現攔截資訊(圖示如
),點選該會話,右邊跳轉至“Inspectors”模組,如下圖所示


    在看到攔截後的Request資訊後,Fiddler提供了方便的檢視方式,其中包括Cookies、Raw、WebForms等。如果想要修改Header資訊,可以在“Headers”模組中用滑鼠右鍵請求行單擊,在彈出的快捷選單中選擇“Edit Header”修改頭資訊。如果是表單資訊,則可以選擇“WebForms”模組,對其進行修改。
    例如:修改此攔截資訊的Header,變為請求訪問百度網站

隨後點選右邊中部的綠色按鈕“Run to Completion”,傳送請求,等待瀏覽器接收資料。(如果選擇黃色的按鈕“Break on Response”,請求照樣可以發出去,但是會在伺服器回送訊息時進行一次攔截。)請求傳送出去後可以看到瀏覽器剛剛請求新浪的頁面變為了百度頁面




(2)設定斷點修改Response

    方法1:選擇“Rules”--“Automatic Breakpoints”--“After Response”。此方法是在伺服器接收請求,返回請求資料時被Fiddler攔截
    方法2:通過命令“bpafter”來設定斷點,如“bpafterwww.baidu.com”只攔截由百度伺服器返回的資料內容,對其他網站沒有影響,取消攔截使用命令“bpafter”。
    這部分的使用和上部分的設定斷點攔截請求是一樣的。不再贅述。