Inspectors
意思是檢查器。Inspectors
可以使用多種方式,檢視請求的請求報文和響應報文相關資訊。
Inspectors
頁籤分為上下兩部分,上部顯示的是所發出請求的相關資訊,下部顯示的是所接收對應響應的相關資訊。
所在位置,如下圖所示:
1、請求報文內容
Inspectors
皮膚中請求報文部分,如下圖:
請求報文中各標籤含義說明:
序號 | 名稱 | 含義 |
---|---|---|
1 | Headers |
顯示客戶端傳送到伺服器的 HTTP 請求的 header,顯示為一個分級檢視,包含了 Web 客戶端資訊、Cookie、傳輸狀態等。 |
2 | TextView |
顯示 POST 請求的 body 部分為文字。 |
3 | Syntaxview |
為Textview的加強版,檢視語法高亮的請求內容。加上了行數標識,滑鼠右鍵的選單中,相較Textview多了一些功能,如Json、XML格式化,查詢替換等。 |
4 | WebForms |
顯示請求的 GET 引數 和 POST body 內容。特別說明,這裡 body 應該是 application/x-www-form-urlen-coded 格式。 |
5 | HexView |
用十六進位制資料顯示請求。 |
6 | Auth |
顯示 header 中的 Proxy-Authorization 和 Authorization 資訊。 |
7 | Cookies |
請求傳送的cookies資訊。 |
8 | Raw |
將整個請求顯示為純文字。 |
9 | JSON |
如果請求的 body 是 Json 格式,就是用分級的 Json 來顯示它。 |
10 | XML |
如果請求的 body 是 XML 格式,就是用分級的 XML 樹來顯示它。 |
2、響應報文內容
Inspectors皮膚中響應報文部分,如下圖:
響應報文中各標籤含義說明:
序號 | 名稱 | 含義 |
---|---|---|
1 | Transformer |
顯示響應的編碼資訊。 |
2 | Headers |
用分級檢視顯示響應的 header。 |
3 | TextView |
使用文字顯示相應的 body。 |
4 | Syntaxview |
為Textview的加強版,檢視語法高亮的請求內容。加上了行數標識,滑鼠右鍵的選單中,相較Textview多了一些功能,如Json、XML格式化,查詢替換等。 |
5 | ImageView |
如果請求是圖片資源,顯示響應的圖片。左側灰色區域會顯示圖片的大小、寬高、檔案格式等資訊,在下方還可以選擇縮放模式:Autoshrink (自動縮放)、Scale to fit (縮放以適應顯示區域大小)、No Scaling (無縮放)。 |
6 | HexView |
用十六進位制資料顯示響應。 |
7 | WebView |
響應在 Web 瀏覽器中的預覽效果。 |
8 | Auth |
顯示響應 header 中的 Proxy-Authorization 和 Authorization 資訊。 |
9 | Caching |
顯示此請求的快取資訊。 |
10 | Cookies |
顯示此請求的cookies資訊,私密 P3P Header 資訊。 |
11 | Raw |
將整個響應顯示為純文字。 |
12 | JSON |
如果請求的 body 是 Json 格式,就是用分級的 Json 來顯示它。 |
13 | XML |
如果響應的 body 是 XML 格式,就是用分級的 XML 樹來顯示它 |
14 | Privacy |
顯示此請求的私密 (P3P) 資訊。 |
提示:P3P 是一種標準,使Internet衝浪者可以選擇在瀏覽網頁時,是否被第三方收集並利用自己的個人資訊,瀏覽器會依據設定,決定在第三方請求的條件下是否接受網站的 cookies。
3、響應報文中Transformer選項說明
Transformer
選項是顯示響應的編碼資訊,如下圖:表示可以選擇幾種壓縮方式來提供效能,圖中是預設沒有選用任何壓縮方式。
抓取訪問百度請求之後,發現響應頭使用的是Transfer-Encoding:chunked
,是用chunked
(分塊傳輸)方式傳送資料長度值。
解釋說明:
- 頂部的黃色提示文字:
Response body is encoded.Click to decode.
表示,此請求為了提高效能,而做了編碼或者壓縮(例如 GZIP),需要轉換後才能正常瀏覽。
點選該區域執行轉換或者解壓縮,如果該請求沒“編碼/壓縮”是看不見此提示的。 Response body: 19 bytes.
響應報文的body是19位元組。Chunked Transfer-Encoding
:分塊傳輸編碼。
分塊傳輸編碼只在HTTP協議1.1版本(HTTP/1.1)中提供。用於http傳送過程的分塊技術,原因是http伺服器響應的報文長度經常是不可預測的,使用Content-length
的實體搜捕並不是總是管用。
分塊技術說明:
響應資料被分成許多的塊,也就是應用層的資料,TCP在傳送的過程中,不對它們做任何的解釋,而是把應用層產生資料全部理解成二進位制流,然後按照MSS的長度切成一份一份的,一股腦塞到tcp協議棧裡面去。而具體這些二進位制的資料如何做解釋,需要應用層來完成;
所以在這之前,一塊整體應用層的資料需要等它分成的所有TCP segment到達對方,重新組裝後,應用程式才使用自己的解碼方法還原它們。HTTP Compression
:顯示當前請求使用的編碼方式。None
:無壓縮。GZIP
:GZIP壓縮。
在Linux系統中經常會用到字尾為.gz
的檔案,它們就是GZIP格式的檔案。Use Zopfli to GZIP/DEFLATE
Google 出了的開源專案Zopfli
。簡單說是一個Deflate壓縮演算法的另一種實現。
據悉,Zopfli
的壓縮率比現有的Zlib
高3%-8%的提升。DEFLATE
:
DEFLATE壓縮是同時使用了LZ77演算法與哈夫曼編碼(Huffman Coding)的一個無損資料壓縮演算法。BZIP2
:
BZIP2壓縮是一個基於Burrows-Wheeler
變換的無失真壓縮軟體,壓縮效果比傳統的LZ77/LZ78壓縮演算法來得好。Brotli
Brotli壓縮取代DEFLATE壓縮來對文字檔案壓縮,通常可以增加20%的壓縮密度,而壓縮與解壓縮速度則大致不變。
Help...
點選 Help... 可以看到以下英文資訊:To improve performance, response bodies may be compressed and/or delivered in chunks.
Before examining or modifying such responses, you may wish to decompress or unchunk them using the Transformer
翻譯:
為了提高效能,可以將響應主體壓縮和/或分塊傳輸。
在檢查或修改此類響應之前,您可能希望使用Transformer對它們進行解壓縮或不進行分塊傳輸。
總結:通過
Transformer
我們可以壓縮和/或分塊傳輸響應結果給目標端(如手機端),也可以解壓縮或不再進行分塊傳輸。