什么是 JSON Schema?
JSON Schema 是由 IETF(互联网工程任务组)定义的词汇表,允许您描述 JSON 数据的结构、约束和验证规则。JSON Schema 指定对象必须具有哪些属性、允许哪些数据类型、值的范围、字符串模式、数组长度等。它被广泛用于 API 请求/响应验证、表单生成、配置文件验证和数据文档化。JSON Schema 支持从 Draft-04 到 Draft 2020-12 的多个版本。此工具允许您从示例 JSON 数据自动生成 JSON Schema(作为起点非常有用),并使用 Ajv(Another JSON Validator)库根据 Schema 验证任何 JSON 文档。Ajv 是 JavaScript 生态系统中使用最广泛的 JSON Schema 验证器。
如何使用此免费在线 JSON Schema 工具
- 1使用顶部的标签页在'生成 Schema'和'验证 JSON'之间切换。
- 2生成 Schema:将示例 JSON 对象粘贴到输入区域,工具会自动推断类型并生成可作为起点使用的 JSON Schema。
- 3验证 JSON:在第一个输入框中粘贴要验证的 JSON 数据,在第二个输入框中粘贴 JSON Schema,然后点击'验证'按钮。
- 4查看验证结果:绿色消息表示 JSON 符合 Schema;红色消息列出所有验证错误及其路径。
- 5点击复制按钮复制生成的 Schema 或验证结果。
JSON Schema 生成与验证器 — 免费在线工具的常见使用场景
快速完成日常任务
无需安装桌面软件,打开网页即可处理常见的文本、图片、数据或格式转换任务。
检查与整理内容
在提交文件、发布内容或复制结果之前,快速发现格式问题并获得结构清晰的输出。
注重隐私的浏览器处理
对于支持本地运行的工具,数据会留在当前浏览器中,不需要上传到第三方服务。
常见问题
此工具支持哪个 JSON Schema 版本?
验证引擎(Ajv)默认支持 JSON Schema Draft-07,这是采用最广泛的版本。Schema 生成器生成的 Schema 兼容 Draft-04 及更高版本。对于 Draft 2019-09 或 2020-12 的功能,可能需要添加 ajv-formats 或 ajv-keywords 插件。
自动生成的 Schema 准确吗?
生成的 Schema 从您提供的示例数据推断类型——它能准确判断字符串、数字、布尔值、数组和对象类型。但它无法推断最小/最大值、字符串模式(正则表达式)、必填字段或枚举值等约束。请将生成的 Schema 视为起点,然后手动完善。
'allErrors: true' 在验证中是什么意思?
默认情况下,Ajv 在遇到第一个验证错误时就会停止。设置 'allErrors: true' 后,它会继续检查并报告找到的每个错误,让您一次获得所有问题的完整信息。这对调试更有用,但对于非常大的文档会稍慢。
这个工具免费且保护隐私吗?
是的。Schema 生成和验证完全在浏览器中使用 to-json-schema 和 Ajv JavaScript 库运行。不会向任何服务器发送数据,也无需注册。