JSON Schema 是一种用于描述 JSON 数据结构的格式,它提供了一种验证 JSON 数据是否符合特定结构的方法。通过 JSON Schema,可以定义 JSON 数据的类型、格式、约束等信息。
JSON Schema 支持多种数据类型,包括:
string
:字符串number
:数字integer
:整数boolean
:布尔值array
:数组object
:对象(类似于 Map)null
:空值JSON Schema 广泛应用于 API 文档生成、数据验证、自动化测试等领域。特别是在前后端分离的开发模式中,JSON Schema 可以帮助前后端更好地沟通和协作。
假设你有一个 Map 对象,需要将其转换为符合 JSON Schema 的 JSON 字符串。以下是一个示例代码:
import json
# 定义 JSON Schema
schema = {
"type": "object",
"properties": {
"name": {"type": "string"},
"age": {"type": "integer"},
"isStudent": {"type": "boolean"}
},
"required": ["name", "age"]
}
# 定义 Map 对象
data = {
"name": "Alice",
"age": 25,
"isStudent": False
}
# 验证数据是否符合 JSON Schema
import jsonschema
from jsonschema import validate
try:
validate(instance=data, schema=schema)
print("数据验证通过")
except jsonschema.exceptions.ValidationError as err:
print("数据验证失败:", err)
# 将 Map 对象转换为 JSON 字符串
json_string = json.dumps(data, indent=4)
print(json_string)
通过上述代码,你可以将一个 Map 对象转换为符合 JSON Schema 的 JSON 字符串,并验证数据是否符合预期的结构和约束。
领取专属 10元无门槛券
手把手带您无忧上云