【whistle 官網】http://wproxy.org/whistle/install.html 【用途】 抓包、mock、修改返回數據、修改響應頭欄位、延遲模擬弱網等 代理轉發 - 需要配置代理轉發規則 把某環境僅前端資源的請求代理轉發到本地 把某個介面地址的請求代理轉發到指定的後端環境地址 ...
【whistle 官網】http://wproxy.org/whistle/install.html
【用途】
- 抓包、mock、修改返回數據、修改響應頭欄位、延遲模擬弱網等
- 代理轉發 - 需要配置代理轉發規則
- 把某環境僅前端資源的請求代理轉發到本地
- 把某個介面地址的請求代理轉發到指定的後端環境地址
- 腳本註入
- 可通過攔截某頁面請求,註入寫好的腳本工具代碼,來完成一些提效的自動化工作
安裝
1.安裝 node 環境
本地如果有 node 環境可跳過
Windows或Mac系統,訪問 https://nodejs.org/,安裝LTS版本的Node,預設安裝即可。
安裝完成後,可通過執行 node -v 來查看是否安裝成功:
2.安裝 whistle
Node安裝成功後,執行如下npm命令安裝whistle (Mac或Linux的非root用戶需要在命令行前面加sudo,如:sudo npm install -g whistle)
npm install -g whistle
npm預設鏡像是在國外,有時候安裝速度很慢或者出現安裝不了的情況,如果無法安裝或者安裝很慢,可以使用taobao的鏡像安裝:
npm install whistle -g --registry=https://registry.npmmirror.com
安裝完成後,可通過執行 w2 -h 來驗證是否安裝成功
啟用 whistle 服務
1.啟用 whistle 服務
w2 start
whistle 服務預設運行在 8899 埠,命令執行成功:
此時可瀏覽器打開 127.0.0.1:8899
2.啟用 https 請求的代理
由於預設是不對 https 請求進行處理,所以需要手動啟用下 https 請求的抓包代理開關
啟用完畢後,需要再重新啟動下 whistle 服務才能生效: w2 restart (或者:w2 stop 之後再 w2 start)
3.安裝https根證書(可選)
如果你想要使用抓包功能,即查看請求體和響應體內容,那麼需要本地電腦安裝 whistle 的證書
http://wproxy.org/whistle/webui/https.html
註意是需要安裝到電腦的:受信任的根證書級別才能生效
如果你不想用抓包功能,只是想使用代理轉發功能,那可以不安裝根證書
4.常用的 w2 命令
命令 | 說明 |
---|---|
w2 start | 啟用服務 |
w2 stop | 停止服務 |
w2 restart | 重啟服務 |
配置代理規則
要使用代理轉發功能,你需要告知 whistle,哪些請求在滿足什麼條件後,代理轉發到哪個地址去
所以需要配置代理轉發規則,舉個實例
1.把訪問 10.110.12.205 環境時,所有的前端資源文件都代理轉發到本地 localhost:3000 埠
配置系統(瀏覽器)代理走whistle的8899埠
由於 whistle 服務是運行在 8899 埠上
因此需要讓你的瀏覽器訪問的頁面請求都經過 8899 埠,這樣這些請求才會被 whistle 接管處理
兩種方式:直接配置系統代理、只配置瀏覽器的代理
系統代理
不過系統代理會影響到全局,可能某些應用禁止代理,那功能就會受到影響
瀏覽器代理
chrome 瀏覽器支持安裝代理插件:SwitchyOmega
Proxy-SwitchyOmega-Chromium-2.5.15.crx
F12 - 更多工具 - 擴展程式,然後左鍵點擊安裝包拖拽到頁面上來安裝離線插件
插件不能安裝的話,就自行去官網下載安裝包