Java?輕松入門使用Fiddler抓包工具教程
一. 下載安裝Fiddler
這里強(qiáng)烈建議大家在官網(wǎng)上下載安裝,在此附上鏈接https://www.telerik.com/fiddler,在其它地方安裝很有可能會(huì)給你再下一堆不必要的軟件(垃圾全家桶),待下載安裝好后,頁面大概是這樣的:

二. 設(shè)置抓取HTTPS功能
剛下載安裝好后,是默認(rèn)不支持抓取HTTPS協(xié)議的,要想抓取HTTPS,

先點(diǎn)擊左上角的Tools-Options-HTTPS

然后再選中這三個(gè)選項(xiàng),

接著點(diǎn)擊Actions-Export Root Certificate to Desktop,此時(shí)桌面上會(huì)出現(xiàn)這個(gè)文件:

我們關(guān)閉Fiddler,接著我們需要在瀏覽器上導(dǎo)入證書(上面這個(gè)文件),以谷歌瀏覽器為例:點(diǎn)擊設(shè)置-安全和隱私設(shè)置-安全-管理證書:


在受信任的根證書頒發(fā)機(jī)構(gòu)里導(dǎo)入桌面上生成的證書即可,最后我們重新打開Fiddler,就可以抓取HTTPS協(xié)議了
三. 嘗試抓取HTTP/HTTPS協(xié)議
HTTPS也是基于HTTP的一種應(yīng)用層協(xié)議,只是在HTTP的基礎(chǔ)上進(jìn)行了加密而已,F(xiàn)iddler會(huì)自動(dòng)幫助我們進(jìn)行解密,還原成最初HTTP的樣子
我們隨便打開一個(gè)頁面(以搜狗為例),此時(shí)會(huì)在Fiddler的左側(cè)頁面看到如下信息:

這個(gè)左側(cè)列表中,里面的每一條都是抓取到的HTTP/HTTPS的請求+相應(yīng),大部分情況下都是有請求+對應(yīng)的相應(yīng)的(除非對方服務(wù)器掛了),選中其中的任何一條內(nèi)容,都可以觀察到請求和相關(guān)響應(yīng)的詳細(xì)格式和具體的信息(如果覺得內(nèi)容太多可以隨便選中其中一條按住ctrl+a全選,然后按住delete就可以全部刪除了)

其中顯示顏色為藍(lán)色的內(nèi)容就是獲取到的搜狗搜索頁面的請求+響應(yīng)
我們雙擊Inspectors:


其中右上角為HTTP請求的詳細(xì)格式(如上圖)

右下角為HTTP響應(yīng)的詳細(xì)格式(如上圖)
最后,我們點(diǎn)擊上方的raw,就可以看到請求和響應(yīng)的原始數(shù)據(jù)啦:

但需注意,請求的原始數(shù)據(jù)就是被用來直接寫入到TCP socket中構(gòu)成HTTP請求的。

但我們看到的響應(yīng)的原始數(shù)據(jù)事實(shí)上是壓縮后的數(shù)據(jù)(網(wǎng)絡(luò)帶寬是一個(gè)高成本的資源,把數(shù)據(jù)壓縮之后傳輸,能夠節(jié)省網(wǎng)絡(luò)帶寬,提高效率降低成本),因此我們需要點(diǎn)擊上面的解壓縮然后才可以看到從TCP socket中讀到的HTTP響應(yīng)數(shù)據(jù)。
解壓縮后如下:


四. 抓包工具的原理
Fiddler 相當(dāng)于一個(gè) “代理”,瀏覽器訪問瀏覽器頁面時(shí),就會(huì)把HTTP請求先發(fā)給Fiddler,F(xiàn)iddler 再把請求轉(zhuǎn)發(fā)給瀏覽器的服務(wù)器,當(dāng)瀏覽器服務(wù)器返回?cái)?shù)據(jù)時(shí),F(xiàn)iddler拿到返回?cái)?shù)據(jù),再把數(shù)據(jù)交給瀏覽器。 因此Fiddler對于瀏覽器和瀏覽器服務(wù)器之間交互的數(shù)據(jù)細(xì)節(jié),都是非常清楚的,進(jìn)而可以幫助我們完成相應(yīng)的抓包工作。

到此這篇關(guān)于Java 輕松入門使用Fiddler抓包工具教程的文章就介紹到這了,更多相關(guān)Java Fiddler抓包內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
解決springboot自定義配置Boolean屬性不能生效的問題
這篇文章主要介紹了解決springboot自定義配置Boolean屬性不能生效的問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05
Java dom4j創(chuàng)建解析xml文檔過程解析
這篇文章主要介紹了Java dom4j創(chuàng)建解析xml文檔過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07
Springcloud服務(wù)注冊consul客戶端過程解析
這篇文章主要介紹了Springcloud服務(wù)注冊consul客戶端過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08
java接口用戶上下文的設(shè)計(jì)與實(shí)現(xiàn)
這篇文章主要為大家介紹了接口用戶上下文的設(shè)計(jì)與實(shí)現(xiàn)實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11
Java中雙重檢查鎖(double checked locking)的正確實(shí)現(xiàn)
雙重檢查鎖(Double-Check Locking),顧名思義,通過兩次檢查,并基于加鎖機(jī)制,實(shí)現(xiàn)某個(gè)功能,下面這篇文章主要給大家介紹了關(guān)于Java中雙重檢查鎖(double checked locking)的相關(guān)資料,需要的朋友可以參考下2021-09-09

