手把手Fiddler掌握
目錄
- 概述
- 功能
- 工具條使用
- 狀態列使用
- 監控皮膚使用
- HTTPS捕獲設定
- 實際運用
- HOSTS設定
- 檔案代理
- 偽造請求
- 模擬網路請求延遲
- 外掛
- 結語
概述
Fiddler是一款HTTP協議除錯代理工具,它能夠抓取記錄本機所有HTTP(S)請求,通過設定斷點等方法我們可以任意修改進出Fiddler的資料(cookie,html,js,css)完成測試。戳 此處下載。
Fiddler極大方便了我們工作中對介面的除錯和資料分析,同時可以通過抓包獲取許多我們想要的資料,下面我們就從使用上全面地瞭解Fiddler
ps:熟悉瞭解Http協議才能更好更快地理解掌握
功能
- Web除錯
- 效能測試
- Http/Https流量記錄
- Web會話處理
- 安全測試
- 自定義擴充性
工具條使用
從左到右依次介紹對請求的操作欄目
- 對請求選中新增註釋
Replay
: 選中請求重新提交X
: 按照條件清除請求列表Go
: http請求或者返回斷點檢視- 如同開發中我們常用的Debug
- 配合狀態列中的斷電開關使用
- 支援開啟請求斷點和響應斷點
Stream
: Http的流模式和緩衝模式切換- 預設是緩衝模式 : 請求完全結束才會返回
Decode
: 解壓請求,更加方便檢視Http請求裡面的資訊- session保持數量
- 過濾請求: 使用方式如同顏色拾取器
- 只接受選中的瀏覽器的請求回話
Find
: 條件搜尋Save
: 儲存當前所有請求到本地- 截圖
- 計時器
- 選擇瀏覽器開啟請求
Clear Cache
: 清除快取TextWizard
: 編碼解碼文字內容
- 快捷的對文字編碼解碼(其實就是一個整合的小工具而已)
複製程式碼
Tearoff
: 視窗分離- 搜尋:基本不用
狀態列操作
- 黑色條塊: 命令列, 輸入help 就能去官網檢視詳細命令
Capturing
: Fiddler是否啟動工作- 過濾回話來源
- Debug請求斷點開關
- 請求條目數
- 當前選中的資源地址
監控皮膚的使用
請求詳細資料監控與操作的主要模組 左半邊就不做解釋了,不懂的可以去複習一下Http協議 這裡簡述一下右半邊監控皮膚的使用
status
: 效能指標統計RTT
: 資料請求往返時間showChat
: 以圖表形式展現資料
Inspectors
: 對請求解包,資料分析最主要的模組Requset
: 上半部分Response
: 下半部分- 請求和響應資訊一目瞭然
AutoResponder
: 資源代理- 拖動目標資源地址
- 替換返回結果,200.。。。或者本地檔案地址或者其他資源地址都ok
- save(記得enable rules)
Composer
: 偽造請求,方便除錯介面(後面詳細講)Filter
: 過濾器- 比較簡單,大家可以看看英文就能使用咯
- 對於過濾無用請求還是十分常用的
TimeLine
: 效能測試分析,多個介面耗時對比FiddlerScript
: 請求程式碼化(後面詳細講)
HTTPS抓取設定
HTTPS正常是無法抓取的,需要匯入安裝Fiddler的證書
步驟如下: 進入Tools -> Telerik Fiddler Options 如圖配置 1.
2. 3. 在HTTPS
的Actions
裡面選擇Export Root Certificate to Destop
生成Fiddler證書到桌面
- 截獲瀏覽器HTTPS請求
- 找到自己常用瀏覽器的設定
- 管理證書,匯入自己剛剛生成的證書就ok啦
- 截獲手機HTTPS請求
- 獲取PC的ip地址:命令列中輸入:
ipconfig
,獲取ip地址 - 保證裝置與電腦連線的是同一個網路
- 手動設定手機代理地址就是本機地址,埠號就是
Connections
頁卡下的埠號 - 將剛剛生成的證書匯入手機並安裝(部分手機因為許可權問題無法直接安裝,需要去安全管理介面才可以選擇證書安裝)
- 獲取PC的ip地址:命令列中輸入:
ip地址檢視
手機設定代理
實際運用
HOSTS設定
對於域名對映的伺服器地址動態修改配置 把網站所有檔案對映到指定的伺服器
- Tools -> HOSTS
- ENable.....(開啟HOSTS設定)
- 配置格式如下: 對映到的伺服器地址 替換HOSTS對映的域名
- 如將www.baidu.com 對映到我本地伺服器 :
127.0.0.1 www.baidu.com
檔案代理
監控皮膚的AutoResponder
Enable Rules
開啟資源代理- 拖拽目標資源,預設是EXACT,也就是指定完整資源路徑代理,也支援關鍵字和正規表示式
- 選擇需要代理的資源(可以是其他返回碼如404,500.....)
save
偽造請求
監控皮膚的Composer
- 將請求拖拽進來,或者直接輸入請求地址
excute
就可以執行請求POST
請求需要在RequestBody填寫引數- 請求頭的資訊都是可以任我們改寫的 這樣一來,我們除錯介面就十分方便了~~~
模擬網路請求延遲
FiddlerScript
作用:把請求程式碼化,呼叫如方法名可見
在OnBeforeRequest
中
- 新增
oSession["request-trickle-delay"]="3000";
為請求新增3秒延時 - 新增
oSession["response-trickle-delay"]="3000";
為伺服器響應新增3秒延時
記得saveScript
Rules
- 前面讓手機連線上Fiddler就不多說了
- Rules -> Customize Rules
- ctrl+f 查詢 SimulateModem ,看到具體程式碼塊 ,修改延遲時間並且儲存
- Performance -> Simulate Modems Speeds : 開啟或者關閉延遲
外掛
除此之外,Fiddler還提供了大量好用的外掛供我們特定的需求 這裡就不一一贅述了,有需要的朋友可以自己上去看一看 官方下載地址
結語
Fiddler的使用到這裡就差不多了 熟練使用Fiddler可以給工作或者自己個人專案帶來莫大的幫助