編輯點(diǎn)評:
LightProxy是由阿里巴巴旗下的安全團(tuán)隊(duì)IFE所推出的一款抓包工具,在GitHub上面進(jìn)行開源,它是基于Electron 和 whistle 所做出的修改版本,在原有的基礎(chǔ)上面更加的好用,能夠幫助編程開發(fā)人員能夠抓取到每一條錯(cuò)誤
使用方法
安裝
打開 DMG 后,把 LightProxy 拖動到 Application 中
#啟動
在應(yīng)用列表中啟動 LightProxy ,第一次啟動時(shí) LightProxy 會詢問兩次密碼,這是用于安裝輔助程序和自動安裝證書。
然后我們就會看到如圖的界面,默認(rèn)規(guī)則中有一些規(guī)則是為了不影響日常的日用軟件,例如 Apple Store 等,如果你確定要代理這些域名可以注釋掉它們。
軟件功能
抓包,包括無線場景抓包
實(shí)時(shí) hosts 綁定
按規(guī)則轉(zhuǎn)發(fā)資源
mock 接口,頁面等
修改請求和響應(yīng)內(nèi)容,例如在頁面中插入 script ,修改返回頭等
軟件特色
穩(wěn)定
好的開發(fā)環(huán)境首先應(yīng)該是穩(wěn)定可用的,不應(yīng)該在開發(fā)測試的過程中頻繁掛掉或者頻繁發(fā)生改變。
依賴于后端日常接口進(jìn)行調(diào)試的前端對這點(diǎn)應(yīng)該深有體會,自己的問題還沒解決,環(huán)境就時(shí)常帶來新的問題。
快速驗(yàn)證
修改代碼能夠在盡可能短的時(shí)間內(nèi)得到驗(yàn)證也是一個(gè)基本訴求,這也是為什么大部分前端構(gòu)建都會關(guān)注 Hot reload 和更高級的 HMR 。
有些場景下的修改一次簡單的修改就要經(jīng)過長時(shí)間的等待,例如依賴上游修改接口的返回內(nèi)容,需要修改后端的頁面結(jié)構(gòu)然后重新部署,需要走一遍完整的發(fā)布流程來測試某個(gè)修改在真實(shí)的線上頁面會產(chǎn)生的影響等等。
和線上的一致性
很多項(xiàng)目的線上環(huán)境極為復(fù)雜,為了解決日常開發(fā)中的問題,也會有一個(gè)線下的 DEMO 頁面,最后開發(fā)完再搬到線上。
這種方式相對來說較為穩(wěn)定且能快速驗(yàn)證,但比較凸顯的問題在于和線上并不一致。開發(fā)中會存在很多 if-else 的邏輯,例如最常見的:
const API_BASE = utils.isDaily ? 'http://localhost:7001:': 'https://xxxx/';
這種情況也往往導(dǎo)致 Bug 非常難以被定位,最后逼著開發(fā)者退化到在線上環(huán)境低效的進(jìn)行 debug。
確定性
開發(fā)者對于當(dāng)前的環(huán)境應(yīng)該是有確切認(rèn)知的,而不是一直不停的懷疑自己的配置到底有沒有生效,命中的是不是又是緩存等等。
有些情況下我們利用 hosts 切換工具來進(jìn)行聯(lián)調(diào),但在切完 hosts 后卻又不得不來回確認(rèn)自己的切換是否生效,清楚 Chrome 的 DNS Cache,清楚 Socket 之類的。
這種非確定性不但提高了開發(fā)者心智負(fù)擔(dān),而且也會導(dǎo)致 Bug 難以定位。
前端抓包神器——whistle
一、安裝
安裝node.js
全局安裝whistle
npm install -g whistle
啟動
w2 start 【注意:每次抓包都要啟動服務(wù)】
二、為瀏覽器配置代理
SwitchyOmega在谷歌瀏覽器應(yīng)用商店下載安裝即可
1
配置代理打開SwitchyOmega后,在代理服務(wù)器配置
三、調(diào)式抓包
啟動whistle
1. 首先在命令行啟動 w2 start 2. 在瀏覽器輸入 http://127.0.0.1:8899/#network3. 成功界面如下
1
2
3
PC抓包調(diào)式
如果配置成功即可成功抓包
1
移動端抓包
保證手機(jī)電腦在同一wifi下
用ipconfig 查看電腦的IP地址
在手機(jī)端設(shè)置代理,【手機(jī)連接wifi后,點(diǎn)擊詳情都會有代理】
設(shè)置成功即可在whistle查看抓包信息
熱門評論
最新評論
發(fā)表評論查看所有評論(0)