手把手Fiddler掌握

Rayhahah發表於2017-08-09

手把手Fiddler掌握


目錄

  • 概述
  • 功能
    • 工具條使用
    • 狀態列使用
    • 監控皮膚使用
  • HTTPS捕獲設定
  • 實際運用
    • HOSTS設定
    • 檔案代理
    • 偽造請求
    • 模擬網路請求延遲
  • 外掛
  • 結語

概述

Fiddler是一款HTTP協議除錯代理工具,它能夠抓取記錄本機所有HTTP(S)請求,通過設定斷點等方法我們可以任意修改進出Fiddler的資料(cookie,html,js,css)完成測試。戳 此處下載。

Fiddler極大方便了我們工作中對介面的除錯和資料分析,同時可以通過抓包獲取許多我們想要的資料,下面我們就從使用上全面地瞭解Fiddler

ps:熟悉瞭解Http協議才能更好更快地理解掌握

功能

  • Web除錯
  • 效能測試
  • Http/Https流量記錄
  • Web會話處理
  • 安全測試
  • 自定義擴充性

工具條使用

對請求的操作欄目

工具條
從左到右依次介紹

  1. 對請求選中新增註釋
  2. Replay : 選中請求重新提交
  3. X : 按照條件清除請求列表
  4. Go : http請求或者返回斷點檢視
    • 如同開發中我們常用的Debug
    • 配合狀態列中的斷電開關使用
    • 支援開啟請求斷點和響應斷點
  5. Stream : Http的流模式和緩衝模式切換
    • 預設是緩衝模式 : 請求完全結束才會返回
  6. Decode : 解壓請求,更加方便檢視Http請求裡面的資訊
  7. session保持數量
  8. 過濾請求: 使用方式如同顏色拾取器
    • 只接受選中的瀏覽器的請求回話
  9. Find : 條件搜尋
  10. Save : 儲存當前所有請求到本地
  11. 截圖
  12. 計時器
  13. 選擇瀏覽器開啟請求
  14. Clear Cache : 清除快取
  15. TextWizard : 編碼解碼文字內容
- 快捷的對文字編碼解碼(其實就是一個整合的小工具而已)
複製程式碼
  1. Tearoff : 視窗分離
  2. 搜尋:基本不用

狀態列操作

狀態列

  1. 黑色條塊: 命令列, 輸入help 就能去官網檢視詳細命令
  2. Capturing : Fiddler是否啟動工作
  3. 過濾回話來源
  4. Debug請求斷點開關
  5. 請求條目數
  6. 當前選中的資源地址

監控皮膚的使用

請求詳細資料監控與操作的主要模組 左半邊就不做解釋了,不懂的可以去複習一下Http協議 這裡簡述一下右半邊監控皮膚的使用

手把手Fiddler掌握

  1. status : 效能指標統計
    • RTT : 資料請求往返時間
    • showChat : 以圖表形式展現資料
  2. Inspectors : 對請求解包,資料分析最主要的模組
    • Requset : 上半部分
    • Response : 下半部分
    • 請求和響應資訊一目瞭然

監控皮膚

  1. AutoResponder : 資源代理
    1. 拖動目標資源地址
    2. 替換返回結果,200.。。。或者本地檔案地址或者其他資源地址都ok
    3. save(記得enable rules)
  2. Composer : 偽造請求,方便除錯介面(後面詳細講)
  3. Filter : 過濾器
    • 比較簡單,大家可以看看英文就能使用咯
    • 對於過濾無用請求還是十分常用的
  4. TimeLine : 效能測試分析,多個介面耗時對比
  5. FiddlerScript : 請求程式碼化(後面詳細講)

HTTPS抓取設定

HTTPS正常是無法抓取的,需要匯入安裝Fiddler的證書

步驟如下: 進入Tools -> Telerik Fiddler Options 如圖配置 1.

Https配置
2.
Connection配置
3. 在HTTPSActions裡面選擇Export Root Certificate to Destop 生成Fiddler證書到桌面


  • 截獲瀏覽器HTTPS請求
    1. 找到自己常用瀏覽器的設定
    2. 管理證書,匯入自己剛剛生成的證書就ok啦
  • 截獲手機HTTPS請求
    1. 獲取PC的ip地址:命令列中輸入:ipconfig,獲取ip地址
    2. 保證裝置與電腦連線的是同一個網路
    3. 手動設定手機代理地址就是本機地址,埠號就是Connections頁卡下的埠號
    4. 將剛剛生成的證書匯入手機並安裝(部分手機因為許可權問題無法直接安裝,需要去安全管理介面才可以選擇證書安裝)

ip地址檢視

ip地址檢視

手機設定代理

手機配置

實際運用

HOSTS設定

對於域名對映的伺服器地址動態修改配置 把網站所有檔案對映到指定的伺服器

  1. Tools -> HOSTS
  2. ENable.....(開啟HOSTS設定)
  3. 配置格式如下: 對映到的伺服器地址 替換HOSTS對映的域名
  4. 如將www.baidu.com 對映到我本地伺服器 : 127.0.0.1 www.baidu.com

HOSTS配置

檔案代理

監控皮膚的AutoResponder

  1. Enable Rules 開啟資源代理
  2. 拖拽目標資源,預設是EXACT,也就是指定完整資源路徑代理,也支援關鍵字和正規表示式
  3. 選擇需要代理的資源(可以是其他返回碼如404,500.....)
  4. save

檔案代理

偽造請求

監控皮膚的Composer

  1. 將請求拖拽進來,或者直接輸入請求地址
  2. excute就可以執行請求
  3. POST請求需要在RequestBody填寫引數
  4. 請求頭的資訊都是可以任我們改寫的 這樣一來,我們除錯介面就十分方便了~~~

模擬請求

模擬網路請求延遲

FiddlerScript 作用:把請求程式碼化,呼叫如方法名可見

OnBeforeRequest

  • 新增oSession["request-trickle-delay"]="3000"; 為請求新增3秒延時
  • 新增oSession["response-trickle-delay"]="3000"; 為伺服器響應新增3秒延時

記得saveScript

延遲請求

Rules

  1. 前面讓手機連線上Fiddler就不多說了
  2. Rules -> Customize Rules
  3. ctrl+f 查詢 SimulateModem ,看到具體程式碼塊 ,修改延遲時間並且儲存
  4. Performance -> Simulate Modems Speeds : 開啟或者關閉延遲

外掛

除此之外,Fiddler還提供了大量好用的外掛供我們特定的需求 這裡就不一一贅述了,有需要的朋友可以自己上去看一看 官方下載地址


結語

Fiddler的使用到這裡就差不多了 熟練使用Fiddler可以給工作或者自己個人專案帶來莫大的幫助

相關文章