最简单有效的 mock 方式是在 fiber handler 中直接用 c.json() 返回硬编码 json,跳过数据库和业务逻辑,确保字段名、嵌套层级、类型与真实接口一致;需避免调用 db 或 cache,可用查询参数或请求头控制多场景分支。

直接在 Fiber handler 里返回硬编码 JSON 是最简单有效的 Mock 方式,无需额外服务或插件,适合单接口快速验证逻辑。
用 c.JSON() 直接返回模拟数据
这是开发初期最轻量的 Mock 手段:跳过数据库和业务逻辑,直接构造响应体。适用于接口结构已定、后端服务未就绪的场景。
- 把真实业务逻辑替换成
c.JSON(200, mockData),确保字段名、嵌套层级、类型(如nullvs[])与真实接口一致 - 避免在 Mock 中调用
db.Query或cache.Get—— 否则无法隔离依赖,起不到 Mock 作用 - 若需区分场景(如 success / error / empty),用
c.QueryParam("mock")或请求头(如c.Get("X-Mock"))控制分支,别写死在 URL 路径里
用 vite-plugin-mock 拦截前端请求(Vue/React 项目)
当你的前端是 Vite 构建、且使用 fetch 或 axios 请求 Fiber 后端时,Mock 应放在前端侧,而非改后端代码。这样前后端可完全并行,切换真实接口时零代码修改。
- 安装插件:
npm install vite-plugin-mock --save-dev - 在
vite.config.ts中配置viteMockServe({ mockPath: './src/mock' }) - 在
src/mock/user.mock.ts里写:export default [{ url: '/api/user', method: 'get', response: () => ({ code: 200, data: { id: 1, name: 'mock-user' } }) }] - 关键点:Fiber 服务照常运行,前端请求被 Vite 开发服务器拦截并返回 Mock,网络面板里仍显示
200 OK,但实际没发到 Fiber
用 Requestly 在 Firefox/Chrome 中覆盖响应
当你无法修改前后端代码(比如测试线上环境、或调试第三方 SDK),又想临时替换某个接口的返回结果,Requestly 是最稳妥的方案 —— 它不依赖本地服务,也不改动任何一行源码。
- 安装 Requestly 扩展后,在 Dashboard 创建一条
Modify Response规则 - Match URL 填
https://your-domain.com/api/order(支持正则,如^https://.*/api/.*$) - Response Body 粘贴完整 JSON,Status Code 设为
200,Content-Type 设为application/json - 注意:Fiber 接口若启用了 CORS 中间件(如
cors.New()),Mock 响应也必须包含Access-Control-Allow-Origin头,否则前端会报跨域错误
真正容易被忽略的是状态一致性:Mock 数据里的时间戳、ID、token 等字段如果和真实流程强相关(比如用于签名验签、幂等判断),光换 body 不够,还得同步伪造 header 或 query 参数,否则前端可能因校验失败而静默失败。











