更新于 2026-08-30

把 JSON 变成 JSON Schema:方法、步骤与推荐

「JSON Schema 怎么来?」本质上是从样本数据反推结构。下面按成本从低到高介绍。

方法一:在线生成(最快)

粘贴 JSON,立即得到 Schema,适合绝大多数日常需求。

方法二:手写

对结构完全掌控,适合需要精细约束(正则、枚举、默认值)的场景。手写参考:

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": { "type": "integer" },
    "name": { "type": "string" },
    "active": { "type": "boolean" },
    "tags": { "type": "array", "items": { "type": "string" } },
    "profile": {
      "type": "object",
      "properties": {
        "city": { "type": "string" },
        "followers": { "type": "integer" }
      },
      "required": ["city", "followers"],
      "additionalProperties": false
    },
    "scores": { "type": "array", "items": { "type": "number" } }
  },
  "required": ["id", "name", "active", "tags", "profile", "scores"],
  "additionalProperties": false
}

方法三:从代码注解生成

如用 TypeScript decorator / class-validator,适合已有强类型模型的团队。缺点是要有现成代码。

我们的建议

先用在线工具从样本快速出 Schema,再按需手动补充约束,效率最高。

常见问题

JSON Schema 能表达枚举吗?

能,手写时给字段加 enum: [...] 即可,工具生成的基线可在此基础上扩展。

生成的 Schema 能直接校验吗?

可以,配合 ajv 等校验库,用生成的 Schema 验证线上 JSON 是否合规。

相关阅读

立即免费使用 JSON 转 Schema 工具 →