B站實戰(zhàn)視頻地址:我愿稱之為B站最強Fiddler抓包教程 全程干貨滿滿_嗶哩嗶哩_bilibili
Fiddler中常用的功能如下:
停止抓包
清空會話窗內(nèi)容
過濾請求
解碼
設(shè)置斷點
一. 停止抓包
二. 清空會話窗
方法一,工具欄工具:
方法二,命令行形式:
當然,命令行工具也還支持其他命令的輸入,這里不做過多說明。
三. 過濾請求
打開Fiddler抓包時,會話窗口會顯示很多的請求,但我們只需要抓取到目標請求數(shù)據(jù),這時就可以設(shè)置過濾。
過濾可以分為兩種方式:只顯示目標請求,只抓取目標端的請求。區(qū)別在于,前者是抓取所有請求但只顯示目標請求數(shù)目,后者是只抓取某個端的請求數(shù)據(jù)。
只顯示目標請求
操作步驟如下:
如界面右側(cè)下方所示,還可以勾選更多的條件進行過濾展示,這里不做過多說明,有興趣的可以自行嘗試。
只抓取目標端的請求
例如,我們只想對移動端抓包時,我們可以設(shè)置只抓取移動端的請求,進行如下設(shè)置:
四. 解碼
在抓取某些請求的時候,會發(fā)現(xiàn)返回的內(nèi)容中出現(xiàn)了亂碼,如下圖所示:
這是HTML被壓縮了的原因, 我們可以通過以下兩種方式去解壓縮。
方法一,點擊Responsebody is encoded.Click to decode.,如下:
方法二,先選中工具欄中的Decode,再請求抓包,這樣顯示的請求結(jié)果便是解碼后的結(jié)果。如下:
解碼后結(jié)果如下圖所示:
五. 設(shè)置斷點
有時進行調(diào)試時,我們需要偽造客戶端請求和服務器響應,那么這個時候就需要設(shè)置斷點。
偽造客戶端請求
偽造客戶端請求,即在客戶端點擊請求后、正式向服務器發(fā)送請求之前,修改原來的請求參數(shù)再發(fā)送請求,這需要設(shè)置斷點為Before Requests,步驟說明如下:
1、通過菜單選項或快捷鍵F11進行設(shè)置,如下圖步驟,點擊選擇Before Requests
經(jīng)過第一步的設(shè)置,我們再次去抓包,會發(fā)現(xiàn)在左側(cè)會話窗口中,所有請求都標記成了中斷,請求未發(fā)送成功而是被Fiddler中斷了,且此時客戶端可以看到數(shù)據(jù)加載異常。
會話窗口中找到對應的請求,點擊選擇,右側(cè)選擇Inspectors,會顯示一行操作欄,點擊Run to Completion便可繼續(xù)發(fā)送被中斷的請求。
但我們的目的是斷點后修改請求數(shù)據(jù)再發(fā)送請求。
2、找到對應的請求,修改請求數(shù)據(jù)
以登錄Testerhome為例,先將設(shè)置斷點為Before Requests,在瀏覽器中輸入正確的賬號和密碼,點擊登錄,然后在Fiddler中找到該請求,將密碼清空,再點擊Run to Completion繼續(xù)發(fā)送請求,服務器會返回什么樣的結(jié)果,下面我們來驗證。
可以看到,瀏覽器輸入正確的賬號密碼應該是要登錄成功的,但我們通過Fiddler打斷點后,對該登錄接口的請求參數(shù)做了修改之后再請求,返回錯誤:賬號或密碼錯誤,請重試。
偽造服務器響應
偽造服務器響應,即在響應返回給客戶端之前,將響應內(nèi)容修改再返回,這需要設(shè)置斷點為After Responses。接下來還是以TestHome網(wǎng)站登錄接口為例,修改它的響應內(nèi)容。步驟如下:
2、正常登錄后會跳轉(zhuǎn)至TesterHome網(wǎng)站首頁,但此時我們可以修改返回參數(shù),讓其登錄后跳轉(zhuǎn)至百度頁面,設(shè)置如下:
如上圖所示,將圖中返回參數(shù)改成百度地址 (TextView形式下可對返回參數(shù)進行修改),再點擊Run to Completion,我們會看到登錄成功后跳轉(zhuǎn)到了百度頁面,而不是TestHome首頁。
注意事項
設(shè)置斷點的功能應有如下注意:
- Inspectors中,在請求參數(shù)顯示窗口WebForms中可以修改請求參數(shù),在響應參數(shù)顯示窗口TextView中可以修改返回參數(shù)。
- 通過菜單選項或快捷鍵F11進行斷點設(shè)置,是全局有效的,即會對所有的HTTP請求都打上斷點
- 如果只需要對某個服務器發(fā)出的請求設(shè)置斷點,可使用Fiddler的命令行工具輸入命令,Before Requests命令為bpu 服務器地址,After Response命令為bpafter 服務器地址,如下圖所示:
- 設(shè)置斷點后,需要取消斷點設(shè)置,需要將斷點設(shè)置成Disabled,操作如下:
- 也可使用快捷工具進行斷點設(shè)置,如下圖所示位置,點擊切換即可:
六. 總結(jié)
Fiddler除了以上介紹的功能外,還有其他功能,如:
- 限制網(wǎng)速,用于模擬弱網(wǎng)測試
- 簡單的接口測試
- mock
- 結(jié)合第三方插件實現(xiàn)更多功能
如果你想成為備受企業(yè)青睞的IT人才
想要高薪offer
技術(shù)經(jīng)驗不夠頂怎么辦?
點擊下方我來教你
全套【軟件測試/自動化測試】海量資料免費領(lǐng)取