Fiddler之——Fiddler簡介

1.爲什麼是Fiddler?

抓包工具有很多,小到最常用的web調試工具firebug,大到通用的強大的抓包工具wireshark.爲什麼使用fiddler?

原因如下:

a.Firebug雖然可以抓包,但是對於分析http請求的詳細信息,不夠強大。模擬http請求的功能也不夠,且firebug常常是需要“無刷新修改”,如果刷新了頁面,所有的修改都不會保存。

b.Wireshark是通用的抓包工具,但是比較龐大,對於只需要抓取http請求的應用來說,似乎有些大材小用。

c.Httpwatch也是比較常用的http抓包工具,但是隻支持IEfirefox瀏覽器(其他瀏覽器可能會有相應的插件),對於想要調試chrome瀏覽器的http請求,似乎稍顯無力,而Fiddler4 是一個使用本地 127.0.0.1:8888 的 HTTP 代理,任何能夠設置 HTTP 代理爲 127.0.0.1:8888 的瀏覽器和應用程序都可以使用 Fiddler。

2.什麼是Fiddler?

Fiddler是位於客戶端和服務器端的HTTP代理,也是目前最常用的http抓包工具之一 。 它能夠記錄客戶端和服務器之間的所有 HTTP請求,可以針對特定的HTTP請求,分析請求數據、設置斷點、調試web應用、修改請求的數據,甚至可以修改服務器返回的數據,功能非常強大,是web調試的利器。

既然是代理,也就是說:客戶端的所有請求都要先經過Fiddler,然後轉發到相應的服務器,反之,服務器端的所有響應,也都會先經過Fiddler然後發送到客戶端,

基於這個原因,Fiddler支持所有可以設置http代理爲127.0.0.1:8888的瀏覽器和應用程序。使用了Fiddler之後,web客戶端和服務器的請求如下所示:

Fiddler 作爲系統代理,當啓用 Fiddler 時,IE、Firefox 是不需要設置代理的


3.Fiddler使用界面簡介

Fiddler主界面的佈局如下:



主界面中主要包括四個常用的塊:

1.Fiddler的菜單欄,上圖黑色部分。包括捕獲http請求,停止捕獲請求,保存http請求,載入本地session、設置捕獲規則等功能。

2.Fiddler的工具欄,上圖黃色部分。包括Fiddler針對當前view的操作(暫停,清除session,decode模式、清除緩存等)。

3.web Session面板,上圖紅色區域,主要是Fiddler抓取到的每條http請求(每一條稱爲一個session),主要包含了請求的url,協議,狀態碼,body等信息,詳細的字段含義如下圖所示:

4.詳情和數據統計面板。針對每條http請求的具體統計(例如發送/接受字節數,發送/接收時間,還有粗略統計世界各地訪問該服務器所花費的時間)和數據包分析。如inspector面板下,提供headerstextviewhexviewRaw等多種方式查看單條http請求的請求報文的信息:


composer面板下,則可以模擬向相應的服務器發送數據的過程(不錯,這就是灌水機器人的基本原理,也可以是部分http flood的一種方式)。

也可以粘貼一次請求的raw http headers,達到模擬請求的目的:


Filter標籤則可以設置Fiddler的過濾規則,來達到過濾http請求的目的。最簡單如:過濾內網http請求而只抓取internethttp請求,或則過濾相應域名的http請求。Fiddler的過濾器非常強大,可以過濾特定http狀態碼的請求,可以過濾特定請求類型的http請求(如css請求,image請求,js請求等),可以過濾請求報文大於或則小於指定大小(byte)的請求:



另外,可以設置是否抓取https請求的數據:



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