whistle in my eyes

whistle是一個跨平臺的抓包與 web debug 工具,可以配置代理服務器,模擬接口數據,捕獲請求重定向到指定 url,修改請求頭響應頭,修改 GET 請求的參數,往匹配的頁面中注入 js、css

手機代理到whistle遇到的一些問題

電腦下載根證書,開啓捕獲HTTPS請求沒有遇到什麼問題,但是當手機代理到whistle時遇到了一系列問題,

首先,點擊HTTPS彈出二維碼時,兩個選擇都應該選中

在這裏插入圖片描述
在這裏插入圖片描述

  1. 打開瀏覽器掃碼或者直接打開鏈接出現http://rootca.pro網頁無法打開的情況時,請查看手機Wi-Fi和電腦是否統一,即是否在同一局域網下,還有手機中該局域網是否配置好代理(服務器/主機名,端口)以及是否正確(因爲切網後,主機名會發生變化)
  2. 如果同一局域網還是無法訪問的情況,或者訪問後下載RootCA進度一直爲0時,可以雙擊whistle頁面彈出的二維碼,下載至本地並傳至手機後手動下載;
  3. ios下,老一點的機子按照指引信任證書即可,新一點的還需要在設置-> 通用->關於本機(的末尾)-> 證書信任設置再手動信任一遍纔行

常用操作

安裝,PC下配置瀏覽器代理,下載根證書,手機代理直接照官網操作即可

  1. 常用命令:
# 啓動
w2 start
# 停止
w2 stop
# 重啓
w2 restart
  1. 常用配置
  • 配host——爲某個域名或具體的 url 指定 ip,繞過 dns 解析,這樣可以一套代碼訪問不同的環境
# 域名 operatorURI / operatorURI 域名
eg: xxx.com 127.0.0.1:8000 
  • 替換線上文件——直接替換js文件到本地進行調試
# 線上文件 本地文件地址
eg: https://eg/eg.html .../eg.html
# 常用的是代理html和靜態資源的情況
/^https?://no\.pp\.com/(.*\.(js|css|png|jpg|gif|jpeg|svg|blob).*)$/ .../dev/$1

/^https?://no\.pp\.com/.../([\w\-]*).html(.*)$/ .../dev/$1.html
  • 通配符匹配與正則匹配

很多情況下直接進行匹配的情況外,還會遇到通配符匹配和正則匹配的情況

正則匹配的情況下,需要特別注意的是最多支持10個子匹配( $0…9),其中$0表示整個請求url,其它跟正則的子匹配一樣

通配符匹配時,匹配模式必須以 ^ 開頭,結束位置用$(如需限制),* 爲通配符,詳細可以參看https://wproxy.org/whistle/pattern.html

  • 修改返回(即將請求的返回值替換爲本地json文件)
# 請求 本地json文件 (可以加突出的樣式,在抓包驗證時會非常好辨識)
/no.pp.com/.../getSomething/ file://{something.json} style://color=@fff&fontStyle=italic&bgColor=@fc8c03

本地文件可以放在 whistle 自帶的 Values 裏,修改添加非常方便

在這裏插入圖片描述

如果僅僅是想修改請求返回的一些值,可以在network下:

Whistle->network->clear

Whistle->network->找到命中的地址->inspectors->preview->copy

Whistle->values->對應的json文件中粘貼修改保存完事

  • 修改header,可能有時候需要修改 Cookie、user-agent、Content-Type來模擬一些情況
xxx.com reqHeaders://{someUserAgent}
xxx.com resHeaders://{someHeader}

花括號中的文件同樣可以values中添加喔😊

修改狀態碼——指定某個接口返回特定的狀態,檢測代碼容錯能力

xxx.com/test statusCode://500

最後附上官網地址:https://wproxy.org/whistle/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章