GO語言實(shí)現(xiàn)的http抓包分析工具pproxy介紹
引言
web 開發(fā)和 API 開發(fā)中難免要詳細(xì)分析 http 請(qǐng)求和響應(yīng)信息。web 開發(fā)的話,瀏覽器提供了便利的工具,比如 chrome 和 IE 都帶了 develop tool,而 firefox 更是有十分強(qiáng)大的 firebug,可以讓 http 請(qǐng)求的所有秘密一覽無遺。目前是 app 大流行的時(shí)代,想要觀察 app 中得 http 請(qǐng)求的秘密,瀏覽器的工具和插件都無能為力,有不少本地化的軟件可以很好的解決這個(gè)問題,Windows 平臺(tái)下有大名鼎鼎的 Fiddler 和 HttpWatch,Mac 平臺(tái)下有 Charles。Charles 是一個(gè)收費(fèi)軟件,價(jià)格不菲要 $50。錢還不是關(guān)鍵問題,作為一名 geek,當(dāng)然想更向往開源,輕量的解決方案了,無意中發(fā)現(xiàn) pproxy,簡(jiǎn)單使用了一下,覺得相當(dāng)棒,可以做絕佳的替代方案。
比較
pproxy 和 Fiddler、Charles 最大的不同是,它是一個(gè)開源軟件,使用 go 編寫,代碼托管在 github 上。因?yàn)殚_源,作為一名 geek,就可以通過閱讀源代碼對(duì)其工作機(jī)制一探究竟,如果發(fā)覺某些方面不能滿足需求,可以直接向開發(fā)者提需求,也可以自己動(dòng)手,豐衣足食,造福大眾。
pproxy 的工作機(jī)制和本地化軟件如 Fiddler、Charles 差別很大。Fiddler 和 Charles 是一個(gè)本地化軟件,通常是安裝在桌面電腦上,通過在桌面電腦建立 proxy,然后截獲的 http 請(qǐng)求和響應(yīng)數(shù)據(jù),提供一個(gè)本地化的 UI 界面提供服務(wù)。而 pproxy 是一個(gè)服務(wù)端軟件,通常安裝在 Linux 服務(wù)器上(當(dāng)然也是可以安裝在桌面電腦上),在服務(wù)器上建立 proxy 截獲 http 請(qǐng)求和響應(yīng)數(shù)據(jù),另外提供一個(gè)遠(yuǎn)程的基于 web (html5)的 UI 界面提供服務(wù)。
Fiddler UI 如下所示:
pproxy UI 如下所示:
使用
pproxy 使用比較簡(jiǎn)單,具體可以參考其使用說明 pproxy。 難得的是他的作者是中國(guó)人,所以說明都是中文的。
總結(jié)
pproxy 是一個(gè)開源的輕巧的 http 抓包分析工具,尤其適合 API http 請(qǐng)求分析,完全可以替換昂貴的收費(fèi)工具,同時(shí)也可以探索其源碼學(xué)習(xí) GO 語言,學(xué)習(xí) http 協(xié)議和分析方法。
相關(guān)文章
golang調(diào)試bug及性能監(jiān)控方式實(shí)踐總結(jié)
這篇文章主要為大家介紹了golang調(diào)試bug及性能監(jiān)控方式實(shí)踐是總結(jié),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05golang常用加密解密算法總結(jié)(AES、DES、RSA、Sha1、MD5)
在項(xiàng)目開發(fā)過程中,當(dāng)操作一些用戶的隱私信息,本文主要主要介紹了golang常用加密解密算法總結(jié)(AES、DES、RSA、Sha1MD5),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04Golang測(cè)試框架goconvey進(jìn)行單元測(cè)試流程介紹
goconvey是一款針對(duì)Golang的測(cè)試框架,可以管理和運(yùn)行測(cè)試用例,同時(shí)提供了豐富的斷言函數(shù),并支持很多Web界面特性,這篇文章主要介紹了使用goconvey進(jìn)行單元測(cè)試流程,感興趣的同學(xué)可以參考下文2023-05-05Go設(shè)計(jì)模式原型模式考查點(diǎn)及使用詳解
這篇文章主要為大家介紹了Go設(shè)計(jì)模式原型模式考查點(diǎn)及使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12