当前位置: 首页 > news >正文

Whistle(基于 Node 实现的跨平台抓包调试工具)的使用

Whistle(基于 Node 实现的跨平台抓包调试工具)的使用

基于Node实现的跨平台抓包调试工具

可以劫持网络请求,并进行请求和响应的修改,来提高我们的开发调试效率

1.一键安装(装包/证书)

npm i -g whistle && w2 start --init

证书的问题

  1. 安装证书。确保是绿色

  2. 重启wjistle , 敲 w2 restart

https://juejin.cn/post/6930414273327792135

2.浏览器打开

http://localhost:8899

在这里插入图片描述

3.安装浏览器拓展(需要科学上网)

Proxy SwitchyOmega

4.浏览器拓展-新建情景模式

填写代理服务器选择填写

HTTP localhost 8899

不代理的地址列表填写

<-loopback>

安装http-server

npm i -g http-server

解决图片跨域

1.新建规则:

(1)Rules中点击上边Create新建规则:www.runoob.com resCors://*

(2)新建规则:www.runoob.com resHeaders://{crosHeader}

Values中新建crosHeader 输入access-control-allow-origin: *

2.勾选

3.网络中停用缓存

忽略代理(过滤)www.baidu.com/s ignore://*

Whistle常见命令

w2 start

w2 stop

w2 restart

w2 add

正则匹配

匹配特定页面 /ke.qq.com/course/\d+/ localhost:8080

匹配所有请求 * localhost:8080

匹配关键词 /api/i test.api.com

路径匹配

匹配指定路径下的所有请求 ke.qq.com/cgi-bin www.test-dev.com

匹配http请求 http://www.test.com/api www.test-dev.com

精确匹配

只匹配单个路径,不包含子路径

**$**www.baidu.com localhost:8081/http

通配匹配

匹配开头 ^www.example.com/test/*** referer://http://www.test.com/$1

匹配开头和结尾 ^www.example.com/test/***test$

绑定转发

将域名转发到本地进行开发 ke.qq.com localhost:8080

在将后台请求分别转发到开发和测试环境 ke.qq.com/api test.ke.qq.com/apike.qq.com/api dev.ke.qq.com/api

修改请求

修改浏览器UA (场景:伪造设备) ke.qq.com ua://{wp_ua}

修改请求referer (场景:伪造来源) ke.qq.com referer://https://baidu.com/

修改请求头 ke.qq.com reqHeaders://{req-headers}

修改响应

修改响应头,加跨域内容 ke.qq.com resHeaders://{res-cors}

往html文档(之前)追加html标签(script,style or normal html tag) ke.qq.com htmlbody://{bodycss}

往js响应追加脚本,如果响应是html文档,则自动用<script></script>包装后插入 ke.qq.com js://{env.js}

往css响应追加样式,如果响应是html文档,则自动用<style></style>包装后插 ke.qq.com css://{css-test}

resReplace,替换响应的某些字符串 ke.qq.com resReplace://{res-replace}

使用线上域名代替本地开发

将 ke.qq.com/user/index 代理到本地 localhost进行开发

设置静态文件转发, ke.qq.com/user/index localhost:8080

发送获取用户信息请求

whistle向页面注入脚本

#注入本地环境变量
htmlPrepend://{env.script} ***.ke.qq.com 
```env.script
<script>
if (typeof window !== 'undefined') {
window.ENV = 'test';
}
</script>
```

whistle实现数据mock功能

ke.qq.com/cig-proxy/user_list {userList}#list
[{name:213},{name:213}
]
``` ~~~

whistle实现数据mock功能

ke.qq.com/cig-proxy/user_list {userList}#list
[{name:213},{name:213}
]
http://www.lryc.cn/news/92991.html

相关文章:

  • 数学模型:Python实现非线性规划
  • Docker网路模型(四)使用 bridge 网络
  • 数据结构与算法之美 | 排序(2)
  • 【外企面试系列】必备口语短语与例句 - A系列
  • Java使用Opencv进行大图找小图并使用其找图功能进行bilibili视频下载案例
  • 肠道健康从核心菌属开始:肠道菌群的关键
  • 深度学习实战37-NASNet(具有自动搜索能力的神经网络模型)的搭建与实战应用
  • 碳排放预测模型 | Python实现基于机器学习回归分析的碳排放预测模型——随机森林、决策树、KNN 和多层感知器 (MLP) 预测分析
  • 人体检测技术之毫米波雷达
  • “Chain of Thought Reasoning“ 和 “Chain Prompts“ 是什么
  • signal
  • 深度研究微软的资产负债表和财务状况以及未来投资价值
  • Mac电脑删除第三方软件工具CleanMyMac X
  • leetcode174. 地下城游戏(java)
  • 信号与系统复习笔记——傅里叶变换
  • Allegor17.2版本WIN11系统CIS配置提示错误解决方案
  • Java设计模式七大原则-合成聚合复用原则
  • SOFA Weekly|可信基础设施技术分论坛、Layotto 社区会议回顾与预告、社区本周贡献...
  • Melody 监控(四十九)
  • Shell脚本管道符常用搭配命令
  • 基于html+mysql+Spring+mybatis+Springboot的Springboot宠物医院管理系统
  • 算法模板(3):搜索(5):其他
  • AWS CodeWhisperer 心得体会:安装与使用
  • 高级查询 — 子查询
  • 霍夫变换(Hough Transform)
  • 【每日挠头算法题(2)】压缩字符串|仅执行一次字符串交换能否使两个字符串相等
  • V4L2框架解析
  • Trie树模板与应用
  • 【华为OD统一考试B卷 | 200分】跳格子游戏(C++ Java JavaScript Python)
  • 该选哪个语言进修呢?