【工具】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.com和http://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,只需要建立一個