什么是 JSON Schema?
JSON Schema 是一种声明性的格式,用于验证 JSON 数据的结构、类型和约束。 它就像 JSON 数据的"蓝图"或"规则书"。
💡 用途:API 验证、配置文件检查、数据格式化、自动生成文档
Schema 示例
定义一个用户对象的 Schema:
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 2,
"maxLength": 50
},
"age": {
"type": "integer",
"minimum": 0,
"maximum": 150
},
"email": {
"type": "string",
"format": "email"
}
},
"required": ["name", "age"],
"additionalProperties": false
}
✅ 有效数据
{"name": "张三", "age": 30, "email": "zhang@example.com"}
❌ 无效数据
{"name": "李四"} (缺少
age)
常用关键字
类型约束
type: 数据类型enum: 枚举值
数值约束
minimum/maximum: 最值exclusiveMinimum: 严格大于
字符串约束
minLength/maxLength: 长度pattern: 正则表达式format: 预定义格式
数组约束
items: 元素类型minItems/maxItems: 数量uniqueItems: 唯一性