標籤:過程 服務 表徵圖 http 分享 說明 前端 網路項目 computer
麼是Fiddler?
網路項目的開發與測試中,Fiddler是強大的抓包工具,它的原理是以webProxy 伺服器的形式進行工作的 ,可以說是非常常用的手頭工具了,本文就Fiddler使用和配置進行說明。
代理就是在用戶端和伺服器之間設定一道關卡,用戶端先將請求資料發送出去後,Proxy 伺服器會將資料包進行攔截,Proxy 伺服器再冒充用戶端發送資料到伺服器;同理,伺服器將響應資料返回,Proxy 伺服器也會將資料攔截,再返回給用戶端
瞭解HTTP協議
- 要分析Fiddler抓取的資料包,先要熟悉HTTP協議。HTTP即超文字傳輸通訊協定 (HTTP),是一個基於請求與響應模式的、無狀態的、應用程式層的協議,絕大多數的Web開發,都是構建在HTTP協議之上的Web應用。
- HTTP的工作過程:當我們請求一個超連結時,HTTP就開始工作了,用戶端先發送一個請求到伺服器,請求內容包括:協議版本號碼、請求地址、請求方式、要求標頭和請求參數;伺服器收到請求後做相應的處理,並將響應資料返回到用戶端,響應內容包括:協議版本號碼、狀態代碼和響應資料。前端根據響應資料做相應的處理,就是最終我們看到的內容。這些過程是HTTP自動完成的,我們只是輸入或點擊請求地址,然後查看前端給我們展示的內容。更多關於HTTP協議的介紹請參考:http://www.cnblogs.com/li0803/archive/2008/11/03/1324746.html
- 請求方式常用的有:GET、PUT、POST、DELETE。
- HTTP狀態代碼主要分為5類:以1開頭的代表請求已被接受,需要繼續處理;以2開頭的代表請求已成功被伺服器接收、理解、並接受;以3開頭的代表需要用戶端採取進一步的操作才能完成請求;以4開頭的代表了用戶端看起來可能發生了錯誤,妨礙了伺服器的處理;以5開頭的代表了伺服器在處理請求的過程中有錯誤或者異常狀態發生,也有可能是伺服器意識到以當前的軟硬體資源無法完成對請求的處理。
- 常見的主要有:每個狀態代碼的詳細介紹請參考:https://baike.baidu.com/item/HTTP%E7%8A%B6%E6%80%81%E7%A0%81/5053660?fr=aladdin
- 200:伺服器成功處理了請求;
- 302:請求的URL已臨時轉移;
- 304:用戶端的緩衝資源是最新的,要用戶端使用緩衝。
- 404:未找到資源;
- 500:內部伺服器錯誤;
- 503:伺服器目前無法為請求提供服務
Fiddler的配置及使用
1. 安裝
直接在官網下載最新版就行: https://www.telerik.com/fiddler , 根據自己的系統下載版本,正常安裝
Fiddler安裝後,預設的連接埠號碼是8888,這個可以根據自己需要進行修改
Fiddler要能進行抓包,需要確保Capture Traffic是開啟的(安裝後是預設開啟的),勾選File->Capture Traffic,也可以直接點擊Fiddler介面左下角的表徵圖開啟和關閉抓包。
如果想抓HTTPS的請求,Fiddler需要做如下的設定
Tools --> Options ,然後按進行勾選,
將Fiddler正式安裝在電腦上,點Action--> Trust Root Certificate--> Yes ,一步步確定
2. 瀏覽器配置
以Chrome瀏覽器為例,需要配置代理,fiddler才能抓到包。
瀏覽器到此為止,基本上不需要做什麼配置,安裝後就可以進行抓包了。
3. 手機的配置
(1)以安卓手機為例,先設定到代理,電腦需要串連WIFI,手機與電腦串連相同的WIFI,路徑:設定 -- >已串連的WIFI -->進階設定-->代理:
Proxy 伺服器主機名稱的擷取,cmd --> ipconfig --> IPv4 地址對應的 IP就是Proxy 伺服器主機名稱
(2)對於手機要抓包,還需要在Fiddler上進行如下配置
路徑: Tools --> Options --> 勾選:Allow remote Computers to connect
(3) 手機要能夠正常抓包,還需要安裝認證,在手機瀏覽器裡輸入:Proxy 伺服器地址:連接埠號碼,(如 192.168.123.122:8888)
看到這裡,恭喜您呐,PC瀏覽器,手機都可以正常的使用Fiddler抓包了。
第二篇 Fiddler配置_瀏覽器&手機