JSON Schema 可以理解为 JSON 数据的结构说明书:哪些字段必须存在、每个字段是什么类型、数组里应该放什么,都可以写成规则。
在接口联调、配置校验、低代码表单和数据导入场景中,JSON Schema 可以帮助你在数据进入业务逻辑前先发现结构错误。
从一段 JSON 开始
{
"id": 1001,
"email": "user@example.com",
"roles": ["admin"],
"active": true
}这段数据包含数字、字符串、数组和布尔值。对应的 Schema 可以描述每个字段的类型以及必填规则。
{
"type": "object",
"required": ["id", "email", "roles", "active"],
"properties": {
"id": { "type": "number" },
"email": { "type": "string", "format": "email" },
"roles": {
"type": "array",
"items": { "type": "string" }
},
"active": { "type": "boolean" }
}
}常用字段是什么意思?
| Schema 字段 | 作用 | 例子 |
|---|---|---|
| type | 限制值的基础类型 | object、array、string、number |
| properties | 描述对象里的字段 | email、roles、active |
| required | 规定必须出现的字段 | id、email |
| items | 描述数组元素类型 | roles 里的每一项是 string |
| format | 补充字符串格式语义 | email、uri、date-time |
接口校验怎么用?
- 用真实接口样本生成第一版 Schema。
- 根据接口文档补充 required、format、enum、minLength 等规则。
- 用 Schema 校验真实请求或响应数据。
- 根据错误路径定位具体字段,再修正数据或调整规则。
总结
JSON Schema 的价值不只是说明数据长什么样,更重要的是把结构约束变成可执行校验,减少接口和数据流里的隐性错误。