Fiddler-基礎四大功能

fiddler的配置和抓包使用等功能已經在前面文章中做了詳細說明,這篇文章主要針對fiddler常用的四大功能做說明

 

簡單原理解釋和注意事項:

Fiddler-option-connect配置了8888端口的代理打開後,表示這臺PC機已經打開了代理,我們可以從瀏覽器--設置--網絡設置中看到代理已經被勾選

手機代理連接後,是通過同一IP網段的的pc機上的8888端口進行代理(手機怎樣連接代理見之前文章),所以,如果pc機上的fiddler關閉,手機代理網絡是連接失敗的

每個手機和PC機都需要唯一證書,所以每個手機連其它PC機上的fiddler時,需要重新安裝證書(注意:ios證書安裝完成後,還需要去設置-通用-關於本機-打開證書開關)

 

一、解析請求:如:解析http請求狀態,請求頭,請求正文,返回頭,返回正文等

詳見抓包內容解析

 

二、修改請求,如:設置斷點,則可以修改發出去的請求數據,或者修改請求返回的數據

步驟一:攔截HTTP請求

設置斷點共有兩種方式:

1、fiddler菜單欄->rules->automatic Breakpoints->選擇斷點方式,這種方式下設定的斷點會對之後的所有HTTP請求有效。有兩個斷點位置:

1)before response。也就是發送請求之後,但是Fiddler代理中轉之前,這時可以修改請求的數據(修改請求數據)

2)after response。也就是服務器響應之後,但是在Fiddler將響應中轉給客戶端之前。這時可以修改響應的結果(修改返回的數據)

3)如何消除命令呢?點擊Rules->Automatic Breakpoint->Disabled

2、命令行設置斷點

1)bpu在請求開始時中斷

2)bpafter在響應到達時中斷

3)bps中斷HTTP響應狀態爲指定字符的全部session響應

4)bpv/bpm中斷指定請求方式的全部session響應

 

步驟二:修改數據

攔截Http請求後修改方式有兩種,一種是臨時修改,即結果只對當次請求有效,另一種是永久修改,可以通過urlreplace命令實現。

①臨時修改請求

即在fiddler中執行Inspectors->WebForms,修改請求變量參數後執行Run to Completion,服務器返回新的請求結果

②永久性修改請求

1)命令行設置修改規則,修改請求:urlreplace 舊請求值 新請求值

fiddler命令行輸入:urlreplace pageid=103 pageid=105

其中pageid是請求參數,輸入命令後回車即可,新的請求設置成功,除非釋放請求,否則請求值不變,釋放請求命令urlreplace

2)腳本中修改規則,打開腳本方式:fiddler執行Rules->Customize Rules

 

注意:由於在請求過程中,接口刷的比較快,很難把斷點打在需要修改數據的接口地方,可以在請求開始前就打上斷點,這樣每一步驟都會停住,手動點擊Run to Completion,直到走到需要修改數據的接口

 

3、重定向請求,如:替換遠程文件,則可以調試線上的js/css代碼(mock功能)

可參考操作步驟

https://blog.csdn.net/weixin_42606128/article/details/81015282

 

簡單來說從clent,server端發出來的請求,都需要通過Fiddler進行代理走一遍。如果有任何請求需要做修改,都可以用Fiddler攔截以後進行修改轉發一次。

也就是一旦用fiddler mock出來的接口,必須要fiddler抓到了這個接口請求,纔會替代成mock數據。比如其它非此fiddler服務器請求的,不經過代理的,不走mock接口

 

 

4、構造請求,如:構造請求發送數據,比如可以用於的測試網站安全性(可以當成接口請求工具使用)

注意:當提交數據爲formdata格式時,一定要在header處content-Type註明類型

 

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