Fiddler高級用法--設置斷點


Fiddler是位於客戶端和服務器之間的代理,它能夠記錄客戶端和服務器之間的所有 HTTP請求,可以針對特定的HTTP請求,分析請求數據、設置斷點、調試web應用、修改請求的數據,甚至可以修改服務器返回的數據,功能非常強大,是web調試的利器。

前面介紹了如何使用Fiddler進行抓包和分析,以及如何抓取APP上的數據包。

這里我們介紹下如何修改請求和響應數據,也就是設置斷點。

一、對request設置斷點

1)通過菜單選項或快捷鍵F11進行設置,如圖

當我們設置斷點后,進行HTTP請求,數據包順序列會有中斷的標記,單擊該數據包可以看到在右側會增加一行操作欄。這個時候我們在前端是沒有正常加載網頁的,點擊【Run to Completion】后可以返回響應數據。

接下來為了看我們的斷點設置是否生效,我們以登錄為例子進行測試。登錄無憂行網站,輸入正確的用戶名和密碼,點擊登錄。我們斷點規則設置為before request,然后將密碼清空,看看服務器給我們返回了什么響應數據。

繼續以登錄為例子,這次我們將手機號改成非移動賬號進行登錄。

 

 由此可見,我們的斷點已經設置成功,並且成功修改了前端傳到后端的HTTP的請求數據。然后繼續向后端發送請求。並且后端會處理修改后的HTTP請求數據並響應。

 2)通過菜單選項或快捷鍵進行設置時,會將所有的HTTP請求都設置斷點,但有時我們只想針對某個服務器發出的請求設置斷點,應該怎么操作呢?

Fiddler是支持命令操作的,我們可以通過“bpu 服務器地址”命令來對特定的請求設置斷點。

在下圖所示的位置輸入命令,然后回車運行。

 這個時候從該服務器發出的所有請求都會被中斷,而從其他服務器發出的請求可以正常響應。

如果要清除原來的斷點,可以在命令行輸入“bpu”,就會清除所有的斷點。

二、對response設置斷點

1)同樣的也可以通過菜單選項或快捷鍵alt+F11進行設置

 2)通過命令“bpafter 服務器地址”

 用一個實例來驗證通過設置斷點修改響應數據。

以百度主頁為例,我們攔截到響應數據中的title值為”百度一下,你就知道“,將響應數據中的title改成”test百度一下,你就知道“,然后在前端查看最終展示。

 

 

 

通過幾個實例,更好的幫助我們理解斷點的含義,也鞏固了Fiddler作為代理服務器的概念。

----------------------------------------------------------------------------------------------------------------------------------------------

總結

 如圖,箭頭所指的位置時可以點擊的。共三種狀態:

1.空白:不設置斷點。
2.箭頭向上:表示斷點請求。此時客戶端的請求是無法直接到達目標服務器的,需要手動控制。
3.箭頭向下:表示斷點響應。此時目標服務器的響應是無法直接到達客戶端的,需要手動控制。

還有一種打斷點的方式

在命令行中輸入命令: 

bpu www.baidu.com  (斷點請求)

bpuafter www.baidu.com(斷點響應)

這種方法只會中斷www.baidu.com

斷點請求並修改

如圖,操作步驟:

  1. 設置斷點請求,訪問網頁
  2. 點擊對應的會話
  3. 查看請求報文信息
  4. 修改請求內容
  5. 完成斷點,放行,把該請求發送給目標服務器。

圖中Break On Response表示把請求發給服務器,但是服務器的響應被fiddler攔截,此時可以修改響應內容(和斷點響應類似)

斷點響應並修改

和斷點請求操作類似,只是在響應區域修改報文信息即可。
在斷點響應時,請注意超時時間。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM