Fiddler 抓不到瀏覽器包的常見原因

代理未設(shè)置成功
fiddler 之所以能抓包,本質(zhì)上是因為瀏覽器/App/軟件設(shè)置了代理為 fiddler。一旦遇到抓不到包的情況,首先應(yīng)排查瀏覽器代理是否設(shè)置正確。
以 Chrome 為例,代理設(shè)置為:
右上角菜單按鈕 > 設(shè)置 > 高級 > 系統(tǒng) > 打開您計算機的代理設(shè)置
確保代理是打開并正確設(shè)置為 Fiddler,以下圖為例使用代理服務(wù)器開關(guān)都是關(guān)的,fiddler 是不可能抓到 Chrome 包的

另外有一個坑也許有部分學(xué)員會遇到,那就是需要****所以使用的 VPN,此時打開 fiddler 肯定也是抓不到包的,本質(zhì)也是代理沒有設(shè)置為 fiddler。

誤點擊或設(shè)置了不抓包
在 fiddler 界面上有兩個位置(設(shè)置)可以作為 fiddler 是否抓包的開關(guān),一是 fiddler 菜單項中 Capture Traffic 選項,另一個是 fiddler 面板最左下角位置,單擊可以切換是否抓包。
請確認是否勾選該選項及確保左下角位置的狀態(tài)為 Capturing。

開啟了過濾器
一般是不小心開啟了過濾器,或者設(shè)置了過濾規(guī)則把我們的目標請求給過濾掉了。這個最坑了,許多人包括我都遇到過多次,忘記了 filter 這回事。
filter 功能可以設(shè)置多維度的過濾規(guī)則,如根據(jù)主機、進程、請求頭、響應(yīng)頭、狀態(tài)碼、響應(yīng)類型和大小、斷點進行請求的過濾。如果我們開啟了過濾器,并且在過濾中設(shè)置了規(guī)則,而目標請求由不符合規(guī)則的話,這些請求將被 Fiddler 給過濾掉,從而無法在會話列表上顯示出來,讓我們誤以為沒有抓到包,然后進行各種騷操作:重啟、排查代理、重裝 fiddler.... 折騰半天后才發(fā)現(xiàn)原來 filter 打開了,其實關(guān)掉 filter 就好了。
比如當(dāng)進行如下設(shè)置時,我們只能抓到主機為 test.lemonban.com 的包,其余包都將被過濾掉:

未開啟 https 抓包
一般線上項目才會采用 HTTPS 協(xié)議進行超文本的安全傳輸,fiddler 需要通過偽造證書才可以對 HTTPS 請求進行加解密,從而在會話面板上線上出來,倘若 fiddler 的根證書沒有安裝或安裝不正確,則沒辦法捕獲 HTTPS 的流量,此時只需要安裝 fiddler 根證書即可。
fiddler 抓包 https 教程請參考:B站 Fiddler 抓包工具-全網(wǎng)最全最細教程,沒有之一