data

JSON Schema 生成器

根据 JSON 样例生成 JSON Schema,并在浏览器本地用 Draft 2020-12 或 Draft 7 校验数据。

JSON Schema 课程

学习 JSON Schema 如何描述数据契约、校验载荷,并随 API 与配置文件演进。

课程首页

关于此工具

DevCove JSON Schema 生成器可以把一份 JSON 样例转换成可继续编辑的 Schema 起点,并在同一个工作区用该 Schema 校验另一份 JSON。适合 API 响应、Mock 数据、测试 fixture、配置文件和接口文档草稿。生成与校验都在浏览器本地完成。

如何使用

当你手上有真实 JSON 样例,需要为 API 校验、Mock 数据或文档快速建立 Schema 时,可以使用这个工具。

  1. 在 JSON 样例中粘贴具有代表性的对象或数组,或直接使用已加载的 API response 示例。
  2. 新项目建议选择 Draft 2020-12;如果现有校验器或平台仍要求旧版本,则选择 Draft 7。
  3. 样例应决定必填字段时选择严格必填;如果想先得到更宽松的起点,选择宽松。
  4. 保持字符串格式推断开启,可识别 email、URI、UUID、date、date-time 等常见格式。
  5. 点击生成 Schema,并在把它当作接口契约前检查生成结果。
  6. 在待校验 JSON 中粘贴另一份数据,点击校验数据,检查它是否符合当前 Schema。
  7. 确认 Schema 符合 API、fixture 或文档需求后,复制或下载结果。

功能特点

这是独立的 Schema 工作区,与 JSON Formatter 分开,面向需要复用校验契约的开发流程:

  • 支持从对象、数组、嵌套对象、对象数组、基础类型和 null 值生成 JSON Schema。
  • 默认使用 JSON Schema Draft 2020-12,同时提供 Draft 7 以兼容旧校验器。
  • 严格 / 宽松两种必填策略,控制样例对 required 字段的约束强度。
  • 合并数组元素样例;只有每一行都出现的字段才会在严格模式下标为必填。
  • 当样例混合 null 和具体值时,自动推断可空字段。
  • 可选推断 email、URI、UUID、date、date-time 等字符串格式。
  • 使用本地 Ajv 对生成或粘贴的 Schema 进行 JSON 校验。
  • 校验错误包含路径、关键词和参数,便于定位字段问题。
  • 支持复制和下载生成的 Schema 文件。
  • 100% 浏览器本地处理:样例、Schema 和校验数据不会上传。

常见问题

什么是 JSON Schema?

JSON Schema 是描述 JSON 数据结构的规范,可以定义对象字段、必填项、值类型、数组、格式和约束。开发者常用它做 API 校验、文档、Mock 和测试。

Draft 2020-12 是什么意思?

它是 JSON Schema 规范的一个版本。Draft 2020-12 适合作为新项目默认选择;Draft 7 仍常见于旧工具和平台。这个生成器两者都支持。

生成的 Schema 可以直接作为最终契约吗?

建议把它当作高质量起点,而不是自动生成的最终契约。你仍需要检查 required 字段,并补充最小长度、枚举值等样例无法证明的业务规则。

严格必填模式如何判断 required?

严格模式会把同一级所有样本对象都出现的字段标为 required。对象数组中,只要某个字段有一行缺失,就不会被标为必填。

什么时候用宽松模式?

当样例不完整、API 字段经常可选,或你想先得到较宽松的 Schema 再人工收紧时,适合使用宽松模式。

工具会校验 email 或 URI 这类 format 吗?

会。开启格式推断后,工具可以添加并校验 email、URI、UUID、date、date-time 等常见格式。

我的 JSON 会上传吗?

不会。Schema 生成和校验都在浏览器本地通过 JavaScript 与 Ajv 完成。DevCove 不上传也不存储你的样例、Schema 或校验数据。