Chrome Overrides是最稳妥的原生方案,需选空文件夹授权、右键Override content生成文件并编辑保存;Requestly插件支持JS动态修改响应体;Network临时屏蔽+Console手动fetch仅适用于单次轻量调试。

前端开发调试时需要临时替换后端接口返回的JSON数据,比如把 status: 0 改成 status: 1 来模拟登录成功,或把用户角色字段从 "guest" 改为 "admin" 测试权限逻辑。
用Chrome本地覆盖(Overrides)修改响应
这是最稳妥的原生方案,修改内容会持久保存到本地文件夹,刷新即生效,且不依赖网络代理或第三方插件。
第一步:打开开发者工具 → 切换到 Sources 面板 → 点击左侧边栏底部的 Overrides 标签。
第二步:点击 Select folder for overrides,选择一个【空文件夹】(如 D:\chrome-overrides),系统弹窗必须点 Allow 授权读写,否则后续无法保存覆盖文件。
第三步:切换到 Network 面板 → 刷新页面 → 找到目标请求(如 /api/user/info),右键 → 选择 Override content。
第四步:DevTools 会自动跳转到 Overrides 编辑器,并在所选文件夹中生成对应路径的文件(如 localhost_8080/api/user/info.json)。此时该请求右侧出现紫色圆点,表示已启用覆盖。
第五步:在编辑器中直接修改响应内容,例如将 "role": "user" 改为 "role": "admin",按 Ctrl+S 保存。下次请求该接口时,浏览器将返回你编辑后的 JSON,原始服务器响应被完全跳过。
用Requestly插件快速篡改响应
适合需要动态计算、多条件判断或频繁切换Mock场景的开发者,支持JS脚本实时解析并修改JSON字段,比纯文本替换更可靠。
方法一:安装 Requestly 插件 → 点击右上角图标 → 选择 Rules → 点击 + New Rule → 选择 “Modify Response”。
方法二:在 Rule Editor 中填写匹配条件,URL Pattern 填 /api/user/profile,Response Body 选择 Dynamic JS 模式。
方法三:在 JS 编辑区输入脚本,例如:
const data = JSON.parse(responseBody);
data.isVip = true;
data.expireAt = Date.now() + 3600000;
return JSON.stringify(data);
这一步必须确保返回的是合法 JSON 字符串,否则页面解析失败会报 SyntaxError;若原始响应是压缩格式(无换行),JS 修改后也需保证格式正确。
用Network面板临时屏蔽再手动注入
适用于只改一次、不需持久化、且不想装插件或配文件夹的轻量场景,但每次刷新都要重做,仅限调试验证。
打开 Network 面板 → 刷新 → 找到目标请求 → 右键 → Block request URL。
刷新页面,确认该请求消失后,在 Console 中执行 fetch 调用,手动返回伪造数据:
fetch('/api/user/profile').then(r => r.json()).then(d => { d.role = 'admin'; console.log(d); });
注意:这种方法不会真正替换接口响应,只是绕过原请求,需自行在代码里处理后续逻辑,不能用于依赖响应体自动渲染的框架组件。



















