JSON Server
零代码快速搭建完整假 REST API 的工具,只需一个 db.json 文件即可获得带增删改查、过滤、排序、分页和关联查询的后端接口,适合前端与测试场景。
爱鲜报评分
0 人评分
76k
星数
否
中文
JavaScript
主语言
是
活跃
96
贡献者
人工分析
EDITORIAL推荐理由
JSON Server 是前端圈最经典的 Mock 后端方案之一,7.5 万 Star 说明其稳定性与口碑。只需写一个 JSON 文件就能得到完整的 REST 接口,省去等待后端联调的时间。新版本还增强了条件过滤、分页与关联查询能力,适合快速原型与自动化测试。
适用场景
- 前端开发阶段模拟后端接口
- 接口联调前的原型验证
- 自动化测试中的假数据服务
- 教学演示与 REST API 学习
- 静态资源与演示页面托管
优点
- 零代码、几分钟内即可启动服务
- 基于 JSON 文件,数据直观易维护
- 支持过滤、排序、分页、关联查询等常用能力
- 社区成熟、文档完善、Star 数极高
- MIT 协议,可自由用于商业项目
缺点
- 数据存于单文件,不适合高并发或生产环境
- v1 仍为 beta,与 v0 存在破坏性变更
- 复杂业务逻辑与鉴权需自行扩展
- 默认无持久化事务与并发控制
JSON Server 是什么
JSON Server 是一个用 JavaScript 编写的轻量级工具:只要提供一个 db.json(或 db.json5)文件,它就能在几十秒内为你生成一套完整的假 REST API。无需写任何后端代码,前端就可以像对接真实服务一样发起请求。
快速上手
安装并启动:
npm install json-server
npx json-server db.json
服务默认运行在 http://localhost:3000。准备一个数据文件:
{
"posts": [
{ "id": "1", "title": "a title", "views": 100 },
{ "id": "2", "title": "another title", "views": 200 }
],
"comments": [
{ "id": "1", "text": "a comment about post 1", "postId": "1" }
],
"profile": { "name": "typicode" }
}
随后即可访问:
curl http://localhost:3000/posts/1
核心能力
标准 REST 路由
数组型资源(如 posts)自动获得 GET / POST / PUT / PATCH / DELETE 全套接口;对象型资源(如 profile)则提供 GET / PUT / PATCH。
查询参数
- 条件过滤:
GET /posts?views:gt=100,支持lt、lte、gt、gte、eq、ne、in、contains、startsWith、endsWith - 排序:
GET /posts?_sort=-views - 分页:
GET /posts?_page=1&_per_page=10 - 关联嵌入:
GET /posts?_embed=comments - 复杂查询:
GET /posts?_where={"or":[...]}
静态文件
默认托管 ./public 目录,也可通过 -s 参数追加更多静态目录。
版本注意
当前 v1 文档标注为 beta,行为与 v0.x 有差异:id 统一为字符串、分页改用 _per_page、关联改用 _embed。若追求稳定,可继续使用 v0.17.x。
适用与限制
JSON Server 非常适合前端开发、接口联调前的原型验证和自动化测试。但它以单文件存储数据,不具备生产级的并发、鉴权与事务能力,不建议直接用于线上业务。
评论
- 暂无评论,来写第一条吧。