JSON Schema 速查
共 24 条 JSON Schema 常用关键字,涵盖基础结构、值约束、数组与对象、组合与引用、校验工具。 支持搜索与分类筛选,点击即可复制。
基础结构
用 JSON 描述 JSON 的结构。
| 命令 | 说明 |
|---|---|
| 声明使用的草案版本 | |
| 限定类型(object/array/string/number/integer/boolean/null) | |
| 定义对象各字段 | |
| 必填字段列表 | |
| 文档与示例元信息 |
值约束
数值、字符串与枚举。
| 命令 | 说明 |
|---|---|
| 字符串长度 | |
| 数值范围(exclusiveMinimum/Maximum 为排他) | |
| 正则约束 | |
| 取值枚举 | |
| 常见格式(需校验器支持) |
数组与对象
集合与额外字段控制。
| 命令 | 说明 |
|---|---|
| 数组元素模式 | |
| 数组长度与去重 | |
| 元组式固定位置元素 | |
| 禁止未声明的字段 | |
| 对象字段数量限制 |
组合与引用
复用与逻辑组合。
| 命令 | 说明 |
|---|---|
| 同时满足全部子模式 | |
| 满足任一 / 恰好一个 | |
| 取反 | |
| 引用可复用片段 | |
| 定义可复用子模式 |
校验工具
常用校验器。
| 命令 | 说明 |
|---|---|
| AJV(JS)命令行校验 | |
| Python jsonschema 校验 | |
| check-jsonschema 工具 | |
| 在代码中编译并校验 |
使用说明
JSON Schema 速查:基础结构、值约束、数组与对象、组合与引用、校验工具;支持搜索与分类筛选,点击即可复制。
- 按用途点分类:基础结构、值约束、数组与对象、组合与引用、校验工具。
- 点「命令」列复制关键字到 schema。
- 用 $defs + $ref 抽出可复用模型,避免重复定义。
- 接口入参、配置校验都可用它统一约束。
常见问题
- additionalProperties: false 有什么用?
- 禁止出现未声明的字段,能挡住拼写错误和多余字段,是接口校验的常用加固。
- allOf 和 oneOf 的区别?
- allOf 要求同时满足全部子模式;oneOf 要求恰好满足其中一个,多一个少一个都算失败。
- 需要联网吗?
- 不需要,本地可用。