Fiddler簡介
-
fiddle是位於客戶端和服務器端的HTTP代理
-
最常用的HTTP抓包工具之一
-
功能非常強大,是web調試的利器
- 監控瀏覽器所有的HTTP/HTTPS流量
- 查看、分析請求內容細節
- 偽造客戶端請求和服務器響應
- 測試網站性能
- 解密httpS的web會話
- 全局、局部斷點功能
- 第三方插件
-
場景使用場景
- 接口調試、接口測試、線上環境調試、web性能分析
- 判斷前后端bug、開發環境hosts配置、mock、弱網斷網測試
-
B\S結構
*編寫程序部署到web服務器
*web服務器運行在服務器上,綁定ip地址並監聽某端口,接受和處理http請求
*客戶端通過http協議獲取服務器上的網頁、文檔等資源

fiddle代理設置/工作原理
打開Tools>Options>Connections

谷歌和火狐默認讀的就是系統代理,所以它能夠被監聽抓取到
打開谷歌瀏覽器-找到設置-高級-打開您計算機的代理設置

所以fiddle只要被打開,他就自動設置代理
如果關了fiddle的話,再打開您計算機的代理設置,會發現代理關閉了

-
http詳解
http://www.testtalking.com/#/data/data
htpp://:協議
www.testtalking.com:域名--》主機- 超文本傳輸協議
- 用於從萬維網服務器傳輸超文本到本地瀏覽器的傳輸協議
- 主要是用來規定客戶端和服務端的數據傳輸格式
- http是基於請求與響應模式的、無狀態的、應用層的協議

-
一個完整HTTP請求是什么樣子呢?
首先抓取一個請求,導出到文本文件

打開,文本內存在兩部分,請求報文和響應報文

- 請求報文組成
http請求報文主要由請求行、請求頭部,空一行、請求正體(請求部分)組成

請求行分三部分:請求方法、請求地址、HTTP協議及版本號

請求方法

- 請求報文組成
-
請求頭部分
Host: 192.888.0.111 //主機是什么 Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.9 //我想接收的內容是什么,
User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.74 Safari/537.36 //用戶客戶端的一些信息,系統和瀏覽器的版本說明,還有
Referer: http://192.888.0.111 /bbs/forum.php //表示我從那個頁面發起的內容
Content-Type:application/x-www-form-urlencoded //表單編碼形式
Accept-Language:zh-CN,zh;q=0.9 //接收的語言
Cookie:JBz7_2132_saltkey=Oy4O69Ao; JBz7_2132_lastvisit=1647727720; JBz7_2132_sid=Xlmh4l; //還有攜帶的cookie
fastloginfield=username&username=test0&password=123456&quickforward=yes&handlekey=ls //你請求發送的內容 -
響應報文組成
http響應報文主要由響應狀態行、響應頭部,空一行、響應正體(響應部分)組成

-
fiddle菜單欄
- 修改端口
打開Tools>Options>Connections

- 分5部分

- 修改端口
