typicode/json-server

GITHUB中文整理

主语言 JavaScript · 75,739 星 · MIT · 创建于 2013-11-27

模拟接口REST API前端工具JSON
打开 GitHub 仓库

一个基于 JavaScript 的命令行工具,用 JSON 文件快速生成完整的模拟 REST API 服务,无需编写后端代码。

Stars 75,739 累计 star,越多说明被认可得越广
Watching 981 订阅该仓库变动的人数
Forks 7,270 被派生出去的仓库数
Issues 723 当前开放的 Issue 数
语言 JavaScript GitHub 自动判定的主语言
许可证 MIT 开源协议,用之前先确认能不能商用
24h 增长 — 数据积累中
7 日增长 — 数据积累中
30 日增长 — 数据积累中

仓库健康度

5 个维度
只看客观信号,不构成安全性结论
维护活跃度 部分数据
2026-03-24 03:40 最近推送

最近推送 2026-03-24 03:40(218 天前),已超过半年没更新

社区响应 数据完整
723 开放 Issue

开放 Issue 723 个 · Fork 7,270 个

增长趋势 证据不足
— 7 日新增

star 记录还不够天数,增量算不出来

项目规范 数据完整
MIT 许可证

许可证 MIT · 7 个 topics

版本发布 证据不足
— 发布次数

这一项暂无数据,不代表项目没有发布

「证据不足」表示这项数据暂时没有取到,不能读成「项目有问题」;「部分数据」表示只拿到一部分信号。版本发布要额外调 Releases 接口,下一版补。

Star 趋势

6 天记录
最近 90 天站内记录的星数
75,739当前 Star +5首尾差值 2026-10-23最早记录 2026-10-28最近记录

横轴 2026-10-23 → 2026-10-28,纵轴按这段时间的最小/最大值拉伸。趋势来自站内每天记录一次的星数,页面打开时不会实时请求 GitHub。

它解决什么问题

据 README 归纳
没有它会怎样

前端开发或原型设计时,后端接口往往尚未就绪,开发者需要等待或手动搭建临时服务,浪费大量时间。没有它,就得自己写服务端代码或依赖不稳定的在线模拟接口,拖慢联调与演示进度。

核心能力

6 条
归纳自 README,不是功能列表照抄
  1. 1读取 JSON 文件自动生成增删改查接口
  2. 2支持 eq、lt、gt、in、contains 等条件过滤
  3. 3提供分页参数 page 与 perpage 控制返回条数
  4. 4通过 where 参数传入 JSON 对象覆盖普通查询条件
  5. 5自动托管 public 目录下的静态文件
  6. 6启动后默认在 3000 端口提供 HTTP 服务

项目画像

6 个角度
决定要不要用之前,先看这六条

项目定位

一个基于 JavaScript 的命令行工具,用 JSON 文件快速生成完整的模拟 REST API 服务,无需编写后端代码。

适合谁

适合前端开发者、原型设计人员以及需要快速搭建演示接口的团队,在等待真实后端或做本地联调时使用。

典型场景

前端页面开发阶段,用一份 JSON 数据文件启动本地接口,直接联调列表页与详情页。;给客户或团队演示产品原型时,快速提供可增删改查的假数据接口,无需等待后端。;测试分页、条件过滤等交互逻辑时,通过 page、perpage、where 等参数构造不同返回结果。

部署难度

通过 npm 安装后,用一条命令指定 JSON 文件即可启动服务,前置依赖仅为 Node.js 环境,上手步骤很少。

风险限制

依赖 Node.js 与 npm 环境;从旧版本升级时存在 ID 处理、分页参数、关系参数等行为变化,且请求延迟需借助浏览器开发者工具模拟。

最近维护

最近一次推送是 2026-03-24 03:40。 实现方式:把一份 JSON 数据文件作为数据源,启动一个 Node.js 服务进程,根据 URL 路径映射到对应资源集合,再解析查询参数完成过滤、分页和关系嵌入,最后返回 JSON 响应。

README 原文细节

3 个板块
项目自己写的功能与用法,原文照录

怎么安装从零跑起来的步骤

Install

npm install json-server

怎么用最典型的用法与示例

Usage

This starts the server at http://localhost:3000. You should see:

{
  "$schema": "./node_modules/json-server/schema.json",
  "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" },
    { "id": "2", "text": "another comment about post 1", "postId": "1" }
  ],
  "profile": {
    "name": "typicode"
  }
}

其它说明README 里剩下的内容

Conditions

  • no operator -> eq (equal)
  • lt less than, lte less than or equal
  • gt greater than, gte greater than or equal
  • eq equal, ne not equal
  • in included in comma-separated list
  • contains string contains (case-insensitive)
  • startsWith string starts with (case-insensitive)
  • endsWith string ends with (case-insensitive)

Migration Notes (v0 → v1)

If you are upgrading from json-server v0.x, note these behavioral changes:

  • ID handling: id is always a string and will be auto-generated if not provided
  • Pagination: Use perpage with page instead of the deprecated limit parameter
  • Relationships: Use embed instead of expand for including related resources
  • Request delays: Use browser DevTools (Network tab > throttling) instead of the removed --delay CLI option

Pagination

Notes: - perpage defaults to 10 if not specified - Invalid page or perpage values are automatically normalized to valid ranges

关于 json-server 的常见问题

6 个问题
答案来自 README 归纳与 GitHub 实时数据
json-server 是做什么的?

一个基于 JavaScript 的命令行工具,用 JSON 文件快速生成完整的模拟 REST API 服务,无需编写后端代码。 前端开发或原型设计时,后端接口往往尚未就绪,开发者需要等待或手动搭建临时服务,浪费大量时间。没有它,就得自己写服务端代码或依赖不稳定的在线模拟接口,拖慢联调与演示进度。

json-server 有哪些功能?

核心能力:读取 JSON 文件自动生成增删改查接口;支持 eq、lt、gt、in、contains 等条件过滤;提供分页参数 page 与 perpage 控制返回条数;通过 where 参数传入 JSON 对象覆盖普通查询条件;自动托管 public 目录下的静态文件;启动后默认在 3000 端口提供 HTTP 服务。

json-server 适合谁用?

适合前端开发者、原型设计人员以及需要快速搭建演示接口的团队,在等待真实后端或做本地联调时使用。

json-server 是怎么工作的?

把一份 JSON 数据文件作为数据源,启动一个 Node.js 服务进程,根据 URL 路径映射到对应资源集合,再解析查询参数完成过滤、分页和关系嵌入,最后返回 JSON 响应。

用 json-server 有什么门槛或限制?

依赖 Node.js 与 npm 环境;从旧版本升级时存在 ID 处理、分页参数、关系参数等行为变化,且请求延迟需借助浏览器开发者工具模拟。

json-server 现在还在维护吗?数据怎么样?

目前 75,739 星,7,270 个 Fork,主语言 JavaScript,创建于 2013-11-27,最近一次推送 2026-03-24 03:40,许可证 MIT。星数、Fork、推送时间都是 GitHub 返回的实时数据,「最近推送」离现在越近说明越活跃;长期不动要留意是否已停止维护。

这些内容来自哪

读法说明
中文整理据 README 归纳,数据取自 GitHub
中文说明据项目 README 归纳只写 README 能确认的内容,不替作者补功能与数字
关键数据与 GitHub 页面一致星数、Fork、语言与时间都不做二次加工
数据日期2026-10-23 17:54星数与介绍这份数据是哪一天的

项目数据取自 GitHub 官方接口与项目 README;星数、Fork、语言与时间以 GitHub 页面为准,档案更新于 2026-10-23 17:54。