1. 程式人生 > >Fiddler使用一(Fiddler簡介)

Fiddler使用一(Fiddler簡介)

img get 瀏覽器 watermark 記錄 緩存 步驟 過濾規則 系統

參考文章:http://blog.csdn.net/ohmygirl/article/details/17846199

1.為什麽是Fiddler?

抓包工具有很多,小到最常用的web調試工具firebug,達到通用的強大的抓包工具wireshark.為什麽使用fiddler?原因如下:

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

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

c.Httpwatch也是比較常用的http抓包工具,但是只支持IE和firefox瀏覽器(其他瀏覽器可能會有相應的插件),對於想要調試chrome瀏覽器的http請求,似乎稍顯無力,而Fiddler2 是一個使用本地 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 的PROXY 設定會變成 127.0.0.1:8888,因此如果你的瀏覽器在開啟fiddler之後沒有設置相應的代理,則fiddler是無法捕獲到HTTP請求的。如下是啟動Fiddler之後,IE瀏覽器的代理設置:

技術分享圖片

以Firefox為例,默認情況下,firefox是沒有啟用代理的(如果你安裝了proxy等代理工具或插件,是另外一種情況),在firefox中配置http代理的步驟如下:

工具->選項->高級->網絡->設置 。並配置相應的代理如下:

技術分享圖片

就可以使用Fiddler抓取Firefox的HTTP請求了。

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面板下,提供headers、textview、hexview,Raw等多種方式查看單條http請求的請求報文的信息:

技術分享圖片

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

技術分享圖片

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

技術分享圖片

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

技術分享圖片

Fiddler使用一(Fiddler簡介)