Fiddler抓包使用教程-基本功能介紹


轉載請標明出處:http://blog.csdn.net/zhaoyanjun6/article/details/72932886
本文出自【趙彥軍的博客】

Fiddler 基本頁面

這里寫圖片描述

會話列表功能介紹

這里寫圖片描述

標識符 含義
# Fiddler為Session生成的ID
Result 響應狀態碼
Protocol 該Session使用的協議(HTTP/HTTPS/FTP)
Host 接收請求的服務器的主機名和端口號
URL 請求URL的路徑、文件和查詢字符串
Body 響應體中包含的字節數
Caching 響應頭中Expires和Cache-Control字段的值
Content-type 響應的Content-type頭
Process 數據流對應的本地Windows進程
Comments 通過工具欄Comment按鈕設置的注釋信息
Custom FiddlerScript所設置的ui-CustomColumn標志位的值

這個排序不是固定的,可以通過鼠標拖拽來改變順序。

清空會話列表

這里寫圖片描述

快捷功能

這里寫圖片描述

  • 第一個是Capturing,控制捕獲會話的快捷開關;

  • 第二個是選擇當前需要捕獲的會話的來源程序,所有程序、瀏覽器、非瀏覽器、都不捕獲選項。

  • 第三個是會話request發送前的斷點和response返回后且到瀏覽器前的斷點,分別對應點一次,點兩次該按鈕(默認是空白即不設斷點),request斷點和response斷點詳情中詳解

  • 后面的而是當前選中會話的一些標識和描述。

會話列表復制

這里寫圖片描述

  • Just Url : 復制完整 url 請求串
http://jcenter.bintray.com/com/yiba/wifisdk/maven-metadata.xml
  • This Column : 復制這個列的內容
  • Terse Summary : 復制一個簡潔的請求
GET http://jcenter.bintray.com/com/yiba/wifisdk/maven-metadata.xml
200 OK (application/xml)
  • Headers only : 復制請求的Header
GET http://jcenter.bintray.com/com/yiba/wifisdk/maven-metadata.xml HTTP/1.1
cache-control: no-cache
Postman-Token: 94f573ac-0f86-439a-9262-d786d00470c1
User-Agent: PostmanRuntime/3.0.9
Accept: */*
Host: jcenter.bintray.com
accept-encoding: gzip, deflate
Connection: keep-alive


HTTP/1.1 200 OK
Server: nginx
Date: Tue, 13 Jun 2017 08:21:51 GMT
Content-Type: application/xml
Content-Length: 690
Connection: keep-alive
Content-Disposition: attachment; filename="maven-metadata.xml"
Last-Modified: Wed, 19 Apr 2017 07:49:26 GMT
Cache-Control: max-age=30, must-revalidate
Accept-Ranges: none
ETag: ce4d1b808ee1a5fa564c72bee9b3db05561adac7b23dfb8a031680683641aba5
X-Checksum-Sha1: 55cd7ab9857f50839f6c91d8bd14494b16822a33
X-Checksum-Sha2: ce4d1b808ee1a5fa564c72bee9b3db05561adac7b23dfb8a031680683641aba5
  • Session : 復制 Session
GET http://jcenter.bintray.com/com/yiba/wifisdk/maven-metadata.xml HTTP/1.1
cache-control: no-cache
Postman-Token: 94f573ac-0f86-439a-9262-d786d00470c1
User-Agent: PostmanRuntime/3.0.9
Accept: */*
Host: jcenter.bintray.com
accept-encoding: gzip, deflate
Connection: keep-alive


HTTP/1.1 200 OK
Server: nginx
Date: Tue, 13 Jun 2017 08:21:51 GMT
Content-Type: application/xml
Content-Length: 690
Connection: keep-alive
Content-Disposition: attachment; filename="maven-metadata.xml"
Last-Modified: Wed, 19 Apr 2017 07:49:26 GMT
Cache-Control: max-age=30, must-revalidate
Accept-Ranges: none
ETag: ce4d1b808ee1a5fa564c72bee9b3db05561adac7b23dfb8a031680683641aba5
X-Checksum-Sha1: 55cd7ab9857f50839f6c91d8bd14494b16822a33
X-Checksum-Sha2: ce4d1b808ee1a5fa564c72bee9b3db05561adac7b23dfb8a031680683641aba5

<?xml version="1.0" encoding="UTF-8"?>
<metadata>
  <groupId>com.yiba</groupId>
  <artifactId>wifisdk</artifactId>
  <version>2.1.8</version>
  <versioning>
    <latest>2.1.8</latest>
    <release>2.1.8</release>
    <versions>
      <version>1.5.1</version>
      <version>2.0.0</version>
      <version>2.0.1</version>
      <version>2.1.0</version>
      <version>2.1.1</version>
      <version>2.1.2</version>
      <version>2.1.3</version>
      <version>2.1.4</version>
      <version>2.1.5</version>
      <version>2.1.6</version>
      <version>2.1.7</version>
      <version>2.1.8</version>
    </versions>
    <lastUpdated>20170419074926</lastUpdated>
  </versioning>
</metadata>


從結果可以看到 : Session = Headlers + 請求結果

  • Response DataURL : 響應數據URL
  • Full Summary : 復制完整的會話列表內容
#	Result	Protocol	Host	URL	Body	Caching	Content-Type	Process	Comments	Custom	
15642	200	HTTP	jcenter.bintray.com	/com/yiba/wifisdk/maven-metadata.xml	690	max-age=30, must-revalidate	application/xml	postman:5532	

會話列表保存

這里寫圖片描述

  • in ArchiveZip:把 Sessions 保存為一個Fiddler 可以執行的文件,文件后綴 .saz。

這里寫圖片描述

雙擊這個文件,可以用 Fiddler 打開,並且重新發起請求。

  • as Text... :把 Sessions 保存為一個文本文件

這里寫圖片描述

  • as Text( Headers only)...:把 Sessions 里面的 Headers 保存為文本文件

這里寫圖片描述

會話列表移除

這里寫圖片描述

  • Selected Sessions : 移除選擇的 Session
  • Unselected Sessions : 除了選擇的Session , 移除其他所有的 Session
  • All Sessions : 移除所有的 Sessions

會話列表過濾

這里寫圖片描述

在會話列表界面,有一個很實用的過濾請求的功能。

  • Hide 'postman' : 隱藏所有從 postman 發出的請求
  • Hide Process =5532 : 隱藏進程為 5532 的所有請求
  • Show Only Process = 5532 : 只顯示進程為 5532 的所有請求
  • Hide 'jcenter.bintray.com' : 隱藏host為 'jcenter.bintray.com' 的請求
  • Hide '/com' : 隱藏請求URL包含 '/com ' 的請求
  • Hide Url : 隱藏用戶指定的 URL 請求
  • Hide 'application/xml’: 隱藏請求類型為 'application/xml' 的請求

會話列表備注

這里寫圖片描述

這里寫圖片描述

這里寫圖片描述

會話列表標記

這里寫圖片描述

可以把會話列表中的 Sessions 標記為特殊的顏色

  • Strikeout : 加刪除線
  • Red : 紅色
  • Blue : 藍色
  • Gold : 金色
  • Green : 綠色
  • Orange : 橙色
  • Purple : 紫色
  • Unmark : 取消標記

這里寫圖片描述

會話列表重放-replay

replay 顧名思義就是重新執行請求。用這個功能可以很方便的多次請求。

在 Fiddler 工具欄中有一個快捷圖片。

這里寫圖片描述

當然這還不夠,會話列表中,我么右鍵下拉框中有 Replay 選項,這個選項提供了豐富的重放條件。

這里寫圖片描述

Reissue : 重發、再版、改版

unconditionally : 無條件的

Sequentially : 順序的、繼續

Composer : 制定者、設計者

  • Reissue Requests : 重新請求 。如果有多個請求,則同時進行,相當於多線程。

  • Reissue Unconditionally:無條件重新請求

  • Reissue Edit:重新請求並且可以編輯。

  • Reissue Verify : 重新請求並且可以驗證 。 發起的請求會有綠色的標記。

  • Reissue Sequentially : 順序的重新發起請求。 如果有多個請求,則順序進行,相當於單線程。

  • Reissue from Composer: 從制定的請求中發起請求。點擊這個按鈕會跳轉到 Composer 選項卡。

  • Revisit in IE : 在 IE 瀏覽器中執行此請求。 點擊這個按鈕會打開 IE 瀏覽器。

Statistics 請求統計

通過陳列出所有的 HTTP 通信量,Fiddler 可以很容易的向您展示哪些文件生成了您當前請求的頁面。使用Statistics頁簽,用戶可以通過選擇多個會話來得來這幾個會話的總的信息統計,比如多個請求和傳輸的字節數。選擇第一個請求和最后一個請求,可獲得整個頁面加載所消耗的總體時間。從條形圖表中還可以分別出哪些請求耗時最多,從而對頁面的訪問進行訪問速度優化。

這里寫圖片描述

統計選項卡的一些信息含義如下解釋:

  • Request Count: 選中的session數;

  • Unique Hosts: 流量流向的獨立目標主機數。如果所有選中的流量都發送到相同的服務器上,則不會顯示該字段。

  • Bytes sent: HTTP請求頭和請求體中向外發送的字節總數。后面括號中分別給出了頭和body各自的字節數。

  • Bytes received: HTTP請求頭和請求體中接收到的所有字節數。在全部計數后面的括號中給出了請求頭和請求體各自的字節數。

  • Requests started at: Fiddler接收到的第一個請求的第一個字節的時間點。

  • Responses completed at: Fiddler發送到客戶端的最后一個響應的最后一個字節的時間點。

  • Sequence(clock) duration: 第一個請求開始到最后一個響應結束之間的 “時鍾時間”。

  • Aggregate session duration: 所有選中的session從請求到響應之間的時間的和。

  • DNS Lookup time: 所有選中的session解析DNS所花費的時間的總和。

  • TCP/IP Connect duration: 所有選中session建立TCP/IP連接所花費的時間總和。

  • HTTPS Handshake duration: 所有選中session在HTTPS握手上所花費的時間總和。

  • Response Codes: 選中session中各個HTTP響應碼的計數。

  • Response Bytes by content-type: 選中session中響應的各個Content-Type的字節數。

  • Estimated Performance: 選中的流量在不同語種(local)地區和連接方式下所需時間的初步估計。

Inspectors 選項卡

翻譯

Inspectors [ɪn'spektər]]
原型、檢查員、巡查員

Inspectors : 上半部分是請求頭部分,下半部分是響應頭部分。

對於每一部分,提供了多種不同格式查看每個請求和響應的內容。JPG 格式使用 ImageView 就可以看到圖片,HTML/JS/CSS 使用 TextView 可以看到響應的內容。Raw 標簽可以查看原始的符合 HTTP 標准的請求和響應頭。Auth則可以查看授權Proxy-Authorization 和 Authorization的相關信息。Cookies標簽可以看到請求的cookie和響應的set-cookie頭信息。

這里寫圖片描述

請求 (Request) 部分詳解

  • Headers —— 顯示客戶端發送到服務器的 HTTP 請求的 header,顯示為一個分級視圖,包含了 Web 客戶端信息、Cookie、傳輸狀態等.

  • Textview —— 顯示 POST 請求的 body 部分為文本

  • WebForms —— 顯示請求的 GET 參數 和 POST body 內容,特別說明,這里 body 應該是 application/x-www-form-urlen-coded 格式

  • HexView —— 用十六進制數據顯示請求

  • Auth —— 顯示 header 中的 Proxy-Authorization 和 Authorization 信息

  • Raw —— 將整個請求顯示為純文本

  • XML —— 如果請求的 body 是 XML 格式,就是用分級的 XML 樹來顯示它

響應 (Response) 部分詳解

  • Transformer —— 顯示響應的編碼信息

這里寫圖片描述

頂部的黃色提示文字表示,此請求為了提高性能,而做了編碼或者壓縮(例如 GZIP),需要轉換后才能在 TextView 里正常瀏覽。點擊該區域或者下面的 Remove HTTP Chunked Encoding 按鈕,都能執行轉換或者解壓縮。如果該請求沒編碼/壓縮是看不見此提示的。

HTTP Compression 顯示當前請求使用的編碼方式

  • No Compression —— 無壓縮
  • GZIP Encoding —— GZIP 壓縮
  • DEFLATE Encoding —— DEFLATE 壓縮
  • BZIP2 Encoding —— BZIP2 壓縮

對未編碼壓縮的請求,可以選擇不同的模式,看 Entity Size 里顯示壓縮后有多大。從而根據這個決定是否需要采用這樣的壓縮技術來提升網站的性能。

  • Headers —— 用分級視圖顯示響應的 header
  • TextView —— 使用文本顯示相應的 body
  • ImageVies —— 如果請求是圖片資源,顯示響應的圖片。

這里寫圖片描述

  • HexView —— 用十六進制數據顯示響應

  • WebView —— 響應在 Web 瀏覽器中的預覽效果

  • Auth —— 顯示響應 header 中的 Proxy-Authorization 和 Authorization 信息

  • Caching —— 顯示此請求的緩存信息

  • Privacy —— 顯示此請求的私密 (P3P) 信息

  • Raw —— 將整個響應顯示為純文本

  • XML —— 如果響應的 body 是 XML 格式,就是用分級的 XML 樹來顯示它

Composer 選項卡:創建請求

這里寫圖片描述

右邊是請求歷史記錄。只要點擊 Execute 按鈕,就會在會話列表中顯示請求的 Session 。用這個可以模擬 http 請求。


個人微信號:zhaoyanjun125 , 歡迎關注


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM