天天看點

第三篇 Fiddler資料包分析

上一篇博文寫完了Fiddler的配置,本篇講講如何用Fiddler進行資料包的分析,下圖是抓到的資料包區域,對這些區域的可見字段進行解析如下, 以便了解這些字段的含義

1.  了解資料包區域的字段含義 

#:順序号,按照抓包的順序從1遞增

Result:HTTP狀态碼      

Protocol:請求使用的協定,如HTTP/HTTPS/FTP等

HOST:請求位址的主機名或域名

URL:請求資源的位置

Body:請求大小

Caching:請求的緩存過期時間或者緩存控制值

Content-Type:請求響應的類型

Process:發送此請求的程序ID

Comments:備注 

Custom:自定義值

第三篇 Fiddler資料包分析

 2. 檢視資料包的具體内容

輕按兩下擊具體的一條資料包可以在右側菜單點選Insepector檢視詳細内容。分為請求(即用戶端發出的資料)和響應(伺服器傳回的資料)兩部分。

第三篇 Fiddler資料包分析

3. Request Header

下面是對Request Header區域各個item做介紹

第三篇 Fiddler資料包分析

請求方式:GET 

協定: HTTP/1.1

1. Cache 頭域

  if-Modified-since:緩存

  if-None-Match:可提高性能(在Response中添加ETag資訊,用戶端再次請求資源,Request中加入if-None-Match(ETag的值),伺服器驗證ETag,若沒改變傳回狀态碼304,有改變,傳回狀态碼200)

  Pragma:防止頁面被緩存

  Cache-Control:Response—Request遵循的緩存機制

  public:可以被任何緩存所緩存

  private:内容隻緩存在私有緩存中

  no-cache:所有内容都不會被緩存

2. Client 頭域

  User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36 (告知伺服器用戶端使用的作業系統與浏覽器的名稱和版本)

  Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8 (浏覽器端可以接受的媒體、檔案類型)

  Accept-Encoding: gzip, deflate (指定壓縮方法,是否支援壓縮,支援什麼壓縮方法(gzip、deflate))

  Accept-Language: zh-CN,zh;q=0.9 (浏覽器申明自己的接收語言)

  Accept-chareset:(浏覽器申明自己接收的字元集。如gb2312,UTF_8)

3. Cookies 頭域

  有的請求不發送Cookies,有的請求有Cookies。

  目的:将cookie值發送給伺服器

 4. Entity頭域

  Content-Length:發送給HTTP伺服器的資料長度

  Content-Type:決定檔案接收方将以什麼形式、什麼編碼讀取此檔案

5. Security 頭域:

  Upgrade-Insecure-Requests: 1

6. Transport 頭域:

  Host: uat.casserver.yxqiche.com(Host:發送請求時,該報頭域是必需的。主要用于指定被請求資源的Internet主機和端口号,通常從HTTP URL 中提取出來)

  Proxy-Connection: keep-alive(Connection:當網頁打開完成後,用戶端和伺服器之間用于傳輸HTTP資料的TCP連接配接是否關閉。keep-alive表示不會關閉,用戶端再次通路這個伺服器上的網頁,會繼續使用這一條已經建立的連接配接;close表示關閉,用戶端再次通路這個伺服器上的網頁,需要重建立立連接配接。)

  connection:Keep—alive            TCP連接配接不會關閉

  connection:close                     一個Request完成後,TCP連接配接關閉

7. Miscellaneous頭域

  Referer:提供了Request的上下文資訊,告訴伺服器我是從哪個連結過來的

  A------>B(B的伺服器從Referer中統計有多少使用者是從A過來的)

4. Response Header

第三篇 Fiddler資料包分析

1. Cache頭域

  Date:生成消息的具體時間和日期

  Expires:浏覽器在指定過期時間内使用本地緩存

2. Cookie/Login頭域

  P3P:使用者跨域設定cookie,可以解決iframe跨域通路cookie的問題

  Set-Cookie:重要的header,用于把cookie發送到用戶端浏覽器,每一個寫入cookie都會生成一個set-cookie

3. Entity頭域

  ETag:與if-None-Match配合使用

  Last-Modified:用于訓示資源的最後修改日期和時間

  Content-Type:Web伺服器告知浏覽器自己響應對象的類型和字元集

  Content-Length:指明實體正文長度,以位元組方式存儲的十進制數字表示。在資料下行中,要預先在伺服器中緩存所有資料,然後所有資料一并發給用戶端

  Content-Encoding:Web伺服器表明自己用了什麼壓縮方式(gzip、deflate)壓縮響應中的對象

  Content-Language:伺服器告知浏覽器自己響應的對象語言

4. Miscellaneous頭域

  Server:指明HTTP伺服器的軟體資訊

  X-Powered-By:表明網站是用什麼技術開發的

  X-AspNet-Version:如果網站是用Asp/Net開發的,這個header用來表明Asp/Net的版本

5. Transport頭域

  connection:Keep—alive            TCP連接配接不會關閉

  connection:close                     一個Request完成後,TCP連接配接關閉

6. Location頭域

  Location:用于重定向一個新的位置,包括新的URL位址

5. HTTP認證過程

  1. 用戶端發送HTTP Request給伺服器;

  2. Request中未包含Authorization header,伺服器會傳回一個401錯誤給用戶端,且在Response中的header“www-Authenticate”中添加資訊;

  3. 用戶端将使用者名和密碼以base64加密後,放在Authorization中發送給伺服器,認證成功;

  4. 伺服器将Authorization header中的使用者名和密碼去除,進行驗證。如果驗證通過,将根據請求發送資源給用戶端;

  HTTP OAuth認證:OAuth對于http來說,就是放在Authorization header中的不是使用者名密碼,而是一個token(令牌)。

  用戶端的使用:用戶端若要跟“使用基本認證的網站”進行互動,将使用者名密碼加載Authorization header中即可。

6.

      通過上面的截圖,可以看到每個請求的前面都有一個小圖示,不同的圖示代表了不同的含義,整理如下:

  [轉]https://www.cnblogs.com/Nick1994/p/8491631.html   感謝願意分享的人,你是最棒的!

  • 第三篇 Fiddler資料包分析
     請求發送到伺服器
  • 第三篇 Fiddler資料包分析
     從伺服器下載下傳響應結果
  • 第三篇 Fiddler資料包分析
     請求在斷點處被暫停
  • 第三篇 Fiddler資料包分析
     響應在斷點處被暫停
  • 第三篇 Fiddler資料包分析
     請求使用HTTP HEAD 方法,響應沒有body(内容)
  • 第三篇 Fiddler資料包分析
     請求使用HTTP POST 方法
  • 第三篇 Fiddler資料包分析
     請求使用HTTP CONNECT 方法;使用HTTPS協定建立連接配接通道
  • 第三篇 Fiddler資料包分析
     響應是HTML格式
  • 第三篇 Fiddler資料包分析
     響應是圖檔格式
  • 第三篇 Fiddler資料包分析
     響應是腳本檔案
  • 第三篇 Fiddler資料包分析
     響應是CSS檔案
  • 第三篇 Fiddler資料包分析
     響應是XML檔案
  • 第三篇 Fiddler資料包分析
     響應是JSON檔案
  • 第三篇 Fiddler資料包分析
     響應是音頻檔案
  • 第三篇 Fiddler資料包分析
     響應是視訊檔案
  • 第三篇 Fiddler資料包分析
     響應是Silverlight applet
  • 第三篇 Fiddler資料包分析
     響應是Flash applet
  • 第三篇 Fiddler資料包分析
     響應是字型
  • 第三篇 Fiddler資料包分析
     普通響應成功
  • 第三篇 Fiddler資料包分析
     響應是HTTP/300,301,302,303,307轉向
  • 第三篇 Fiddler資料包分析
     響應是HTTP304(無變更): 使用被緩存的版本
  • 第三篇 Fiddler資料包分析
     響應需要一個用戶端憑證
  • 第三篇 Fiddler資料包分析
     響應是一個Server錯誤
  • 第三篇 Fiddler資料包分析
     會話被用戶端、Fiddler或者Server終止