1. 程式人生 > >【工具】Fiddler使用教程

【工具】Fiddler使用教程

目錄

概述 2
Fiddler是做什麼的,能幫助我們做什麼? 2
工作原理 2
代理模式 3
使用場景——提供的功能 3
介面及使用介紹 3
常用功能 10
HOST配置 10
前後端介面連調——Composer 11
網路限速FiddlerScript——測試在不同網路下的請求執行狀況 13
捕獲IOS/Android移動裝置上的請求 14
外掛介紹 15
附錄一 16
圖示解釋: 16
web session的常用的快捷鍵 16
參考: 17

但是,由於早期fiddler是基於.net開發的,所以在windows平臺下支援的功能更多,
在IOS\Linux的支援會相對少。

概述

Fiddler是做什麼的,能幫助我們做什麼?

1、能夠監聽http/httpS的流量,可以截獲從瀏覽器或者客戶端軟體向伺服器傳送的http/https請求;
2、對截獲之後的請求,我們還能夠檢視請求中的內容;
3、偽造請求。不僅可以偽造客戶端的請求,還能夠偽造伺服器的響應。——該功能能夠方便我們進行前後端的調式。
4、測試網站的效能;
5、解密https的外部會話。因為https本身是一種加密的協議,通過fiddle我們可以進行解密操作;
6、提供第三方擴充套件外掛,滿足更多需求。

工作原理

這裡寫圖片描述

需要經過fiddler的代理伺服器代為轉發請求與響應。
如何實現?


首先啟動fiddler,然後在瀏覽器中檢視區域網代理伺服器。圖示:
這裡寫圖片描述

可以看到代理伺服器的地址變成了127.0.0.1 ,這就是fiddler監聽的地址。

代理模式

流模式與緩衝模式。

流模式:fiddler會實時把伺服器返回給客戶端的資料進行返回。 緩衝模式:fiddler會等待所有的請求都準備好之後才返回給客戶端。

區別:緩衝模式下可以控制最後的伺服器響應;而流模式下不能控制,是什麼就是什麼,更接近瀏覽器本身的真實行為。

選擇:具體情況具體選擇。

使用場景——提供的功能

1、開發環境的host配置;
2、前後端介面連調——Composer
3、定位線上bug——將釋出檔案代理到本地,快速定位線上bug;
4、效能分析和優化——Inspectors 、Timeline

介面及使用介紹

這裡寫圖片描述

1、選單欄
2、工具欄

(1)氣泡:備註。新增之後在會話欄的Comment列中顯示備註內容。

這裡寫圖片描述

(2)Replay:回放【常用】。重播一個會話。快捷鍵:”選中會話+R”

這裡寫圖片描述

(3)清除會話面板:過濾請求、清除請求。

這裡寫圖片描述

(4)Go:斷點調式。配合狀態列上的斷點工具。功能類似Debug。

這裡寫圖片描述

(5)Stream:代理模式。預設:緩衝模式。點選進行切換。

這裡寫圖片描述

(6)Decode:解壓請求。解壓http請求裡面的東西,幫助檢視。

這裡寫圖片描述

(7)Keep:指示fiddler的保持會話數目。

這裡寫圖片描述

(8)Any Process:捕獲請求,只看需要的請求。將“靶心”投向需要的請求。

這裡寫圖片描述

(9)Find:查詢請求。用顏色標註查詢的請求。

這裡寫圖片描述

(10)Save:儲存會話。

這裡寫圖片描述

(11)截圖:預設5秒後截圖。

這裡寫圖片描述

(12)計時器:第一次點選-開始計時;第二次點選–返回計時結果;第三次點選-清零,重新計時。右鍵點選—不計時。

這裡寫圖片描述

(13)Browse:啟動瀏覽器;

這裡寫圖片描述

(14)Clear Cache:清空快取;

這裡寫圖片描述

(15)TextWizard:【常用】編碼、解碼文字內容;

這裡寫圖片描述

(16)Tearoff:浮窗。

這裡寫圖片描述

3、會話面板【fiddler核心功能之一】

這裡寫圖片描述

Server IP:需要配置。 這裡寫圖片描述

Ctrl+F :搜尋”static function Main()”,新增程式碼:

FiddlerObject.UI.lvSessions.AddBoundColumn(“Server IP”,120,”X-HostIP”);
然後重啟Fiddler。

4、詳情和資料統計面板

這裡寫圖片描述

(1)Statistics:資料統計面板。效能分析。

這裡寫圖片描述

RTT:【主要關注】體現一個請求從傳送到返回響應的時間。
通過選擇多個會話來得來這幾個會話的總的資訊統計,比如多個請求和傳輸的位元組數。選擇第一個請求和最後一個請求,可獲得整個頁面載入所消耗的總體時間。從條形圖表中還可以分別出哪些請求耗時最多,從而對頁面的訪問進行訪問速度優化。

(2)Inspectors :對抓到的請求進行解包,檢視具體內容。

這裡寫圖片描述

(3)AutoResponder:檔案代理【常用】。例如,將一個需要服務端返回的檔案,使用本地檔案做代理。

這裡寫圖片描述

(4)Composer:前後端介面連調,偽造請求【常用】。實現不寫任何js程式碼的情況下實現與服務端的介面調式。

這裡寫圖片描述

(5)Timeline: 效能分析。對選擇多個請求有意義。作用類似HttpWatch.

這裡寫圖片描述

5、控制面板:

(1)命令列工具:執行一些快捷操作。

這裡寫圖片描述

常見的命令有:

  • help 開啟官方的使用頁面介紹,所有的命令都會列出來   
  • cls 清屏 (Ctrl+x 也可以清屏)
  • select 選擇會話的命令
  • ?.png 用來選擇png字尾的圖片
  • bpu 截獲request

(2)狀態列:

這裡寫圖片描述

Capturing:開啟/關閉 fiddler的監聽;

Web Browsers:過濾會話選擇;

常用功能

HOST配置
將線上的伺服器IP配置為指向本地伺服器IP。將線上所有的檔案的地址都對映到本地。

這裡寫圖片描述

1、檔案替換\線上bug調式——AutoResponder

(1)、可用於攔截某一請求,並重定向到本地的資源,或者使用Fiddler的內建響應。可用於除錯伺服器端程式碼而無需修改伺服器端的程式碼和配置,因為攔截和重定向後,實際上訪問的是本地的檔案或者得到的是Fiddler的內建響應。
因此,如果要除錯伺服器的某個指令碼檔案,可以將該指令碼攔截到本地,在本地修改完指令碼之後,再修改伺服器端的內容,這可以保證,儘量在真實的環境下去除錯,從而最大限度的減少bug發生的可能性。

(2)、不僅是單個url,Fiddler支援多種url匹配的方式:

I. 字元匹配 如 example可以匹配 http://www.example.comhttp://example.com.cn
II.完全匹配 以EXACT開頭表示完全匹配,如上邊的例子 EXACT:http://blog.csdn.net/ohmygirl
III. 正則表示式匹配
以regex: 開頭,使用正則表示式來匹配URL
如:regex:(?insx).*.(css|js|php)$
表示匹配所有以css,js,php結尾的請求url

這裡寫圖片描述

前後端介面連調——Composer

選中一個介面——>拖拽到Composer面板;
準備工作:
介面請求方式、請求引數;
Get請求:引數直接寫在接口裡面

這裡寫圖片描述

Post請求:引數寫在Request Body裡面。

這裡寫圖片描述

同時,我們還能夠偽造Request Header中的Cookie。

這裡寫圖片描述

網路限速FiddlerScript——測試在不同網路下的請求執行狀況

原理:將請求程式碼化。
OnBeforeRequest()表示在傳送一個請求時需要做什麼。

這裡寫圖片描述

例如:

新增程式碼:
oSession[“resquest-trickle-delay”]=”3000”;//表示延時3秒請求;
oSession[“response-trickle-delay”]=”3000”;//表示延時3秒響應;

缺點:需要編寫C#程式碼。
解決方案:使用圖形化外掛;

捕獲IOS/Android移動裝置上的請求

1)首先設定fiddler。選單欄Tools—》Fiddler Options。

這裡寫圖片描述
這裡寫圖片描述

2)讓你的電腦與移動裝置處於同一個WiFi連線狀態(不要使用VPN),然後命令列ipconfig檢視本機IP。

這裡寫圖片描述

3)使用你的移動裝置在瀏覽器上訪問本機IP加“埠號”。例如:192.168.1.28:8888,然後會出現一個Fiddler的證書,安裝該證書。

這裡寫圖片描述
這裡寫圖片描述

4)設定你的移動裝置。讓裝置處在WiFi連線,設定代理為手動。然後填寫代理IP為你的電腦的IP,埠號為8888。

這裡寫圖片描述

5)現在你就可以在手機上操作,例如訪問瀏覽器,此時在fiddler就能監聽到了。

外掛介紹

外掛下載地址:
http://www.telerik.com/fiddler/add-ons
例如:
- Javascript Formatter——Javascript格式化外掛
- Traffic Differ——檔案比較外掛
- 第三方外掛 Willow ——http代理外掛

附錄一

圖示解釋:

這裡寫圖片描述

web session的常用的快捷鍵

  • CTRL+A: 選中所有的session;
  • ESC: 取消選中所有的session;
  • CTRL+I 反向選中;如果session已選中,則取消,否則選中;
  • CTRL+X 刪除所有的session;
  • Delete: 刪除選中的session;
  • Shift+Delete 刪除所有未選中的session;
  • R 重新執行當前請求;
  • SHIFT+R 多次重複執行當前請求
  • U: 無條件重新執行當前請求,傳送不包含If-Modified-Since 和 If-None– Match的請求頭;
  • SHIFT+U 無條件地多次重複執行當前請求;
  • ALT+Enter 檢視當前session的屬性;
  • Insert:切換是否用紅色粗體標記選中的session;
  • M 給選中的session新增描述;

參考:

相關推薦

工具Fiddler使用教程

目錄 概述 2 Fiddler是做什麼的,能幫助我們做什麼? 2 工作原理 2 代理模式 3 使用場景——提供的功能 3 介面及使用介紹 3 常用功能 10 HOST配置 10 前後端介面連調——Composer 1

爬蟲工具Fiddler學習Fiddler教程,比較經典全面-----------四

  https://blog.csdn.net/persistencegoing/article/details/84376427 簡介 Fiddler(中文名稱:小提琴)是一個HTTP的除錯代理,以代理伺服器的方式,監聽系統的Http網路資料流動,Fiddler可以也可以讓你

Fiddler工具使用介紹一

摘自:https://www.cnblogs.com/miantest/p/7289694.html   Fiddler基礎知識 Fiddler是強大的抓包工具,它的原理是以web代理伺服器的形式進行工作的,使用的代理地址是:127.0.0.1,埠預設為8888,我們也可以通過設定進行修

抓包工具Fiddler有哪些好用的指令碼功能?

Fiddler(官方文件地址)Fiddler自定義指令碼可以實現很強大的內容替換,包括很有意義的修改請求和返回內容。具體的方法可以參考官網文件。# FiddlerUseScript:首先你需要在fidd

Fiddler抓包教程

-o 設置斷點 分享 默認 afa 接口 web 文檔 篡改 Fiddler簡介 簡單地講就是一個抓包工具,或者是叫做網絡嗅探器,把網絡傳輸的數據抓取下來進行分析、Debug。 它可以對常用的瀏覽器:IE、Chrome、Firefox、Safari 等進行抓包,支

開發簡易教程

.com nta this 寫代碼 page img util 創建 腳本 本文檔將帶你一步步創建完成一個微信小程序,並可以在手機上體驗該小程序的實際效果。這個小程序的首頁將會顯示歡迎語以及當前用戶的微信頭像,點擊頭像,可以在新開的頁面中查看當前小程序的啟動日誌。下載源碼

工具Sublime Text 自動保存功能

簡單 images log 失去焦點 找到 英文 ctrl http 分享 經常需要所以要頻繁用到"ctrl+s"保存還是挺麻煩的,所以有的人需要用到失去焦點自動保存功能,這裏簡單記錄下 1、點擊"Preferences"裏的設置-用戶,有的版本是英文 2、ctrl+f找

工具代碼生成器-python腳本

rdquo ~~ sts rip ## image div 去掉 拆分字段 我覺得造輪子這件事情,是誰都可以做的。只不過做得好或者不好而已,用心了做得就要優雅一點。 之前用過java的代碼生成器,什麽pojodobodbo都能生成,於是我也來自己造一個輪子。 造輪子的事

工具Homebrew的安裝及使用

inux 狀態 管理 ont arc user 圖片 程序 out Homebrew官網:http://brew.sh/index_zh-cn.html Homebrew是Mac OSX上的軟件包管理工具,能在Mac中方便的安裝軟件或者卸載軟件,相當於linux下的apt

mpich2圖文教程:mpich2的安裝、配置、測試、vs配置、命令列測試(沒有使用)

轉載請註明出處,原文連結:https://blog.csdn.net/u013642500/article/details/83549093 【安裝mpich2】 1、開啟“mpich2-1.4.1p1-win-ia32.msi。 2、點選“Next”。 3、點選“N

Android實用教程:匯入android-gif-drawable包,不用在GitHub下載(Android Studio 3.1.2)

轉載請註明出處,原文連結:https://blog.csdn.net/u013642500/article/details/80193877 【AS版本】 【步驟】 1、開啟Project Structural。(可點選圖示,也可以在File選單中開啟,也可以按Ctrl+Al

Android實用教程:匯入SlidingMenu包,不用在GitHub下載(Android Studio 3.1.2)

轉載請註明出處,原文連結:https://blog.csdn.net/u013642500/article/details/80192923 【AS版本】 【步驟】 1、開啟Project Structural。(可點選圖示,也可以在File選單中開啟,也可以按Ctrl+Al

工具終端 iterm2 + zsh + oh-my-zsh

iTerm2 Mac的終端不好用嗎,是時候換一款終端了了iTerm2, 下載:https://iterm2.com/ 你要說好用在哪,可以看看這個 https://iterm2.com/features.html zsh zsh是shell語言型別,相容bash,提供強大的命

工具Typora 一款好用的markdown語法工具 個人配置喜好

軟體的官網下載連結,滑到底部選擇版本即可下載 主題設定 偏好設定 效果展示

工具Nmap

Nmap工具幫助說明 語法: nmap [掃描型別] [選項] [目標規範] 目標規範 可以傳遞主機名、IP地址、域名等。可以指定單個IP或IP段 eg:192.168.1.0/24、192.168.1.1,2,3-15 -iL <filen

工具hydra多協議破解工具

hydra九頭蛇爆破工具幫助說明 語法 hydra [[[-l LOGIN|-L FILE] [-p PASS|-P FILE]] | [-C FILE]] [-e nsr] [-o FILE] [-t TASKS] [-M FILE [-T TASKS]] [-w TIME] [-

工具gobuster目錄猜解工具

gobuster-Web目錄暴力破解工具幫助 Gobuster是Kali Linux預設安裝的一款暴力掃描工具。它是使用Go語言編寫的命令列工具,具備優異的執行效率和併發效能。該工具支援對子域名和Web目錄進行基於字典的暴力掃描。不同於其他工具,該工具支援同時多副檔名破解,適合採

工具分享自用的Burp外掛

Burp Suite常用外掛說明 一、sqlmap外掛 使用sqlmap.jar可以在測試時通過右鍵選單快速把當前測試資料包進行SQLMAP測試 二、hackebar外掛 使用HackBar.jar可以在Burp中使用hackebar功能,具體功能

工具Sqlmap

Sqlmap幫助說明 選項-Options -h:顯示基本幫助資訊 -hh:顯示高階詳細幫助資訊 --version:顯示程式版本資訊 -v:設定觀察資料等級,一共七個等級: -v 0: 只顯示python錯誤資訊以及嚴重的資訊 -v 1:同時顯示基本資訊和警告資訊(

轉載SpringCloud教程 | 第三篇: 服務消費者(Feign)

上一篇文章,講述瞭如何通過RestTemplate+Ribbon去消費服務,這篇文章主要講述如何通過Feign去消費服務。 一、Feign簡介 Feign是一個宣告式的偽Http客戶端,它使得寫Http客戶端變得更簡單。使用Feign,只需要建立一個