JSON Schema 生成器

JSON 数据 输入

1

JSON Schema 输出

设置
输入变化时自动生成已开启

生成 JSON Schema

在左侧输入 JSON 数据,即可自动生成对应的 JSON Schema

支持嵌套对象与数组

自动识别数据类型

生成基础校验规则

如何从 JSON 生成 JSON Schema(步骤指南)

使用在线 JSON Schema 生成器,从 JSON 样例生成 Schema,用于校验、文档与 API 合同。

  1. 步骤 1:提供 JSON 样例

    • 将具有代表性的 JSON 对象或数组粘贴到左侧编辑器。
    • 优先使用真实线上数据,让 Schema 更贴近实际结构。
    • 尽量覆盖所有可能的字段取值与嵌套结构。
  2. 步骤 2:检查生成结果

    • 右侧会输出推断后的 Schema(类型、required 与结构定义)。
    • 检查数组 items、嵌套对象与字段类型是否符合预期。
    • 确认必填/可选字段是否识别正确。
  3. 步骤 3:按需自定义(可选)

    • 复制生成的 Schema,补充更严格的校验规则、描述或约束。
    • 可补充 enum 值、 minLength/maxLength, pattern 正则等约束。
    • 联合类型可使用 oneOf anyOf 来表达多种可能。
  4. 步骤 4:使用 Schema

    • 下载或复制 Schema,用于校验器、API 文档工具或代码生成器。
    • 可集成 Ajv(JavaScript)、jsonschema(Python)等校验库进行运行时校验。
    • 在 OpenAPI/Swagger 中引用 Schema,或用它生成强类型代码。

快速建议

  • 上线前建议用 JSON 校验器或运行时校验库验证生成的 Schema 是否可用。
  • 尽量使用真实样例数据,生成器才能更准确地推断类型与 required。
  • 每个 payload(如 API 请求/响应)维护一份“标准 Schema”,避免环境差异带来的漂移。

Schema 关键字支持说明

如果你添加了更高级的关键字,例如 $ref, anyOf, oneOf, allOf,建议用完整的 JSON Schema validator(例如 Ajv)做校验,并在生成 Mock 数据前考虑先进行 dereference。

示例:JSON → JSON Schema
// JSON input
{
  "id": 1,
  "name": "Maeve Winters",
  "email": "[email protected]",
  "active": true,
  "tags": ["developer", "backend"]
}

// Generated JSON Schema (simplified)
{
  "type": "object",
  "properties": {
    "id": { "type": "number" },
    "name": { "type": "string" },
    "email": { "type": "string" },
    "active": { "type": "boolean" },
    "tags": {
      "type": "array",
      "items": { "type": "string" }
    }
  },
  "required": ["id", "name", "email", "active", "tags"]
}

相关工具

搭配这些工具一起使用,完成校验、文档化与 Mock 数据生成。

常见问题

什么是 JSON Schema?

JSON Schema 是一套描述 JSON 结构与约束的规范,可用于注释与校验 JSON 文档。它相当于数据“合同”,明确字段类型、必填项与规则。

如何根据 JSON 生成 Schema?

把你的 JSON 数据粘贴到左侧输入框,系统会根据结构自动生成 Schema(类型、必填字段、嵌套层级等)。

生成的 Schema 包含哪些信息?

生成结果包含字段类型、required、数组 items、对象结构,以及基于样例推断出的基础约束(例如长度/范围等)。

我可以自定义生成后的 Schema 吗?

可以。生成后你可以复制 Schema 并按需补充约束、描述与校验规则,让它更贴合你的业务与工具链。

JSON Schema 生成器 | JSONSwiss