在做測試的過程中,遇到一些問題都會去進行抓包,抓包可以幫助我們解決很多問題,抓包工具有很多比如fiddler,瀏覽器調試工具(F12),charles等,抓包工具是我們測試人員必不可少的一項技能。
什么是Fiddler
Fiddler是一款免費的互聯網調試代理工具,是一款國外軟件,原版軟件無中文版,但有漢化版。它不僅可以抓取你電腦甚至手機與互聯網的各種http通訊,同時還能查看他們進行分析。在必要的時候,你甚至可以修改(偽造)某些通訊實現前后端開發者調試的作用。其他作用比如解密https協議會話。
Fiddler下載安裝
官方文檔:https://www.telerik.com/fiddler
官方下載,安裝傻瓜式安裝~~
Fiddler工作原理
打開Fiddler的時候,它會自動給你的電腦創建一個系統代理,默認監聽端口為8888。Fiddler作為一個客戶端和服務器之間的橋梁,可以獲得它們之間通信的信息,這些信息進行解析之后以會話的形式呈現給我們。Fiddler在退出的時候會自動關閉代理,如果Fiddler非正常退出會影響到網絡無法訪問,這個時候重新啟動fiddler再次關閉就可以繼續訪問網頁了。
Fiddler頁面介紹
1、工具欄依次是:數據重放(Replay),轉到(GO),數據流(Stream),解碼(Decode),保持所以會話(session),進程(Process),查找(Find),保存(Save),瀏覽(Browse),清除緩存(clear Cache),文字編碼(TextWizard),分離(Tearoff)
2、會話列表:顯示捕捉每個session會話
3、請求響應:方便查看請求信息
4、返回響應:方便查看返回請求信息
5、命令行工具:可以通過輸入一些命令完成操作
Statistics選擇卡
statistics表示統計請求和響應的一些信息
request count:請求數,表示該session總共發起了多少個請求。
Bytes sent:發送請求的字節數(包括請求頭和請求體)
Bytes received:接收到的字節數(包括響應頭和響應體)
------------------------
clientconnected:客戶端連接的時間;
clientbeginrequest:客戶端開始發送請求的時間;
gotrequestheaders:獲得請求頭文件的時間;
clientdonerequest:客戶端完成請求的時間;
determine gateway:確定網關使用的時間;
dns lookup:查看dns使用的時間;
tcp/ip connect:tcp/ip 連接使用的時間;
https handshake:https握手使用的時間;
serverconnected:服務連接發生的時間;
fiddlerbeginrequest:fiddler開始請求的時間;
servergotrequest:服務器得到請求的時間;
serverbeginresponse:服務器開始響應的時間;
gotresponseheaders:得到響應頭文件的時間;
serverdoneresponse:服務器完成響應的時間;
clientbeginresponse:客戶端開始響應的時間;
clientdoneresponse:客戶端完成響應的時間;
overall elapsed:全部花掉的時間(使用客戶端完成響應的時間-客戶端開始請求的時間)
Inspectors選擇卡
Inspectors 選項卡下可以查看HTTP 請求和日TTP響應的報文結構。其中Raw選項卡可以查看完整的消息,Headers 選項卡只查看消息中的Header
這些功能可以詳細的查看請求內容和響應內容
AutoResponder選擇卡
模擬返回的內容,
我們拿請求百度舉例子。上傳了圖片
再次請求查看返回內容,發現返回我們的是一個照片
composer選擇卡
composer是Fiddler做接口調試的模塊
會話列表
RequestMethod:請求方式
URL:請求鏈接
host:請求服務器主機
content-Type:響應中Content-Type 的值
Result:HTTP狀態碼
protocol:請求協議類型(HTTP或者HTTPS)
body:Body大小
caching:緩存相關的字段值
Process :對應本地Windows 的進程
各個會話圖標表示什么
官方地址:https://docs.telerik.com/fiddler/KnowledgeBase/UIGuide
工具使用
Fiddler抓取HTTP協議
1、打開Fiddler工具,打開任意一個瀏覽器,輸入我們想要抓取的網址如:www.baidu.com
2、查看會話列表,選擇其中一個會話,查看請求信息中Inspectors功能,查看詳細數據
Fiddler設置開始捕捉和停止捕捉
在Fiddler使用過程中已經抓取到了我們想要的數據,這個時候就可以停止抓包,防止抓取一些不必要的數據影響分析:
1、直接使用快捷鍵F12(停止或者開啟抓包)
2、在Fiddler 中單擊File-> Capture Traffic (快捷鍵是Fl2 ) 來開始抓包或者停止抓包。
3、單擊Fiddler 左下角的"Capturing"按鈕來開始抓包或者停止抓包。