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

后端接口挂了,前端怎么继续干活?这个 Chrome 扩展让我再也没等过后端

一个零依赖、纯浏览器的响应改写工具,让你的页面数据随时可控。


你有没有过这样的经历——

下午三点,后端同事说"接口马上好",你对着浏览器里的 500 干瞪眼。UI 写好了,逻辑写好了,就差数据联调,偏偏卡在这一步。要么等,要么临时写一堆if (!data) return mockData的脏代码,回头还得记得删。

我之前也是这样。直到我受不了了,写了一个 Chrome 扩展:ResponseRewriter

它做了什么?

一句话:你在浏览器里看到的任何 XHR/Fetch 请求的返回值,都可以被接管、替换、改写。

不需要改一行后端代码,不需要起 Mock 服务,不需要配 hosts 或者代理。装好扩展,写一条 JSON 规则,刷新页面——页面里展示的,就是你想让它展示的数据。

四个场景,四种用法

1. 后端接口挂了 → 整段替换

最常见的场景。后端 500,前端没法继续调。在 ResponseRewriter 里新建一条规则:

  • URL 匹配方式选"包含",填/api/user/profile
  • 响应处理选"整段替换"
  • 内容填{"code":0,"data":{"name":"张三","role":"admin"}}

刷新页面,你的前端收到的就是这段 JSON。跟真实接口返回的一模一样。

2. 只想改几个字段 → JSON 合并

有时候接口能通,但你想看看某个字段改成极端值会不会崩溃。比如把balance改成-1,把status改成999

JSON 合并模式只覆盖你指定的字段,其余原样保留。不用拷贝整个响应体再改,一个对象写清楚要覆盖什么就够了。

3. 想根据原响应动态计算 → JS 转换

某些场景下,你想基于原始返回值做逻辑处理——加密、拼接、条件替换。JS 转换模式给你完整的脚本能力:

constdata=JSON.parse(originalResponse);// 根据请求参数动态调整if(context.url.includes('vip')){data.level='premium';}returndata;

你能拿到originalResponsecontext(包含 URL、方法等请求信息),想怎么算怎么算。

4. 接口还没写好 → Mock 拦截

最爽的功能。Fetch 请求直接在浏览器层面被拦截,连网络请求都不会发出。DevTools 的 Network 面板里根本看不到这条请求。就像这个接口从来没被调用过——页面直接拿到了你预设的返回值。

后端连接口定义都还没出的阶段,前端就能把整个页面调通。

为什么不用 Postman Mock / Whistle / Charles?

这些工具都很优秀,但 ResponseRewriter 解决了一个根本差异:

零切换。

Postman Mock 需要你在 Postman 和浏览器之间来回切;Whistle 和 Charles 要配代理、装证书;Mock 服务要起一个额外的进程。

ResponseRewriter 就在你调试的页面里工作。页面代码感知到的就是改写后的数据,跟真实网络返回没有任何区别。你不需要离开当前页面,不需要改系统设置。

而且,规则就是一条 JSON——你可以导出、发到群里、存到 Git 仓库。队友导入就能用,零配置。

几个我特别满意的细节

  • 拦截日志 + 命中对比:每次命中都有完整的原始→改写对比记录,JSON 自动格式化去噪。改了哪里,一目了然。不用再对着控制台猜"现在用的是真实数据还是 mock 数据"。

  • 规则执行顺序可拖拽排序:多条规则命中同一个请求时,按列表顺序依次处理。上下拖动就能调整优先级,或者按键Alt+↑/↓

  • URL 匹配三种模式:精确匹配、包含匹配、正则匹配。而且全部自动忽略 URL 参数——不用担心?v=123导致匹配失败。

  • 暗黑模式 + 四国语言:中日英韩完整翻译,浅色/暗黑主题切换。对深夜加班的同学比较友好。

  • 纯原生实现,零 npm 依赖:整个项目没有node_modulesnode --test直接跑 69 项测试。不装 Node 也能用——clone 下来直接加载到 Chrome。

  • 隐私优先:扩展首次启用拦截前会明确说明并征得同意。所有数据只存在本机chrome.storage.local,日志最多存 100 条,没有任何数据会发出去。

你可能会关心的问题

安全吗?扩展只申请了storage<all_urls>两个权限——一个存数据,一个让注入脚本能在调试页面运行。不读浏览历史,不碰 Cookie。JS 转换脚本在页面上下文执行,请只用自己的可信脚本。隐私政策完整透明,代码在 GitHub 开源。

能改二进制数据吗?不能。目前定位是文本响应(JSON / XML / HTML 等),二进制文件(图片、视频、字体)不适合用这个工具改。

适合线上用吗?这是一个开发测试工具,不建议在包含敏感数据的生产页面上持续启用。用完就关。

装一个试试?

开源地址:https://github.com/FutaoSmile/ResponseRewriter

安装方式:clone 项目 → Chrome 打开chrome://extensions/→ 开启开发者模式 → 加载已解压的扩展程序 → 选择项目目录。首次安装会自动带入 4 条示例规则和示例日志,不配也能看懂用法。

Chrome 114+ 可用,MIT 开源。


前端开发最大的时间浪费之一,就是在等后端接口。把这个等待时间彻底干掉,就是 ResponseRewriter 存在的理由。

不管你是前端开发、测试、还是偶尔需要改一下页面数据的任何角色,这个工具都值得装一个。

如果你觉得它有用,欢迎给个 Star ⭐,或者分享给你的队友们。

http://www.jsqmd.com/news/1298262/

相关文章:

  • 终极内存补丁技术:深度解析RevokeMsgPatcher跨平台消息保留解决方案
  • 浏览器网络请求控制神器:Header Editor 终极免费指南
  • 计算机体系结构期末高效复习指南:从流水线到Cache的核心攻坚
  • FPGA学习路线全解析:从硬件思维到算法加速的实战指南
  • 获客智能体怎么变现?订阅、贴牌、项目制和代运营怎么选
  • Java垃圾回收机制与性能优化实战
  • 游戏性能优化实战:解决GC频繁触发导致的帧率卡顿问题
  • 钣金设计高薪进阶:从材料工艺到DFMA降本增效全解析
  • 响应式编程中的数据消费者:Subscriber 的角色与本质
  • 如何用Sunshine打造个人云游戏服务器:免费开源的终极指南
  • 光纤通信四波混频效应MATLAB仿真实现
  • 2026 年阿合奇诚信的多联机中央空调安装定做厂家推荐,选它居然省了小半万?空调安装的那些你不知道的省钱门道-博力久能暖通工程 - 企业官方推荐【认证】
  • PyTorch核心架构与深度学习框架设计解析
  • SSH连接linux之>linux用户管理
  • STM32串口通信实战:CH340驱动安装、硬件连接与程序下载全攻略
  • API幂等性测试实战:从原理到并发与事务一致性验证
  • C语言-函数指针
  • 微软研究院 ResearchStudio-Idea,做成 AI skill 教大模型按论文套路想研究 idea,IdeaSpark 盲评质量 3.87/4 领先所有基线
  • Mem Reduct深度解析:轻量级内存管理工具的核心机制与实战优化指南
  • 为什么32GB文件上传限制让WordPress迁移变得如此简单?
  • 2026年AI Agent架构设计与实战:从范式跃迁到落地踩坑
  • 知名开发者和项目为何逃离 GitHub?另谋高就还是另有隐情?
  • GetQzonehistory:QQ空间历史数据抓取与处理架构解析
  • 实体门店获客成本高,如何用BBWEYY搭建本地线上入口,含零代码SAAS、AI编程、源码定制交付
  • J-Link V9固件修复指南:SWD接口与STM32F205芯片救砖实战
  • AMD显卡也能运行CUDA:ZLUDA终极指南与实战教程
  • LangGraph 工作流:为什么 Agent 能跑通却不敢上线?
  • 框架协议与采购订单:核心区别、执行要点与流程优化
  • Word导出PDF图片模糊?从原理到实操的完整解决方案
  • redis从6.2.x版本升级到8.8.1