架构是:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"header": {
"type": "object",
"properties": {
"token": { "type": "string" },
"id": { "type": "number" },
"command": { "type": "string" }
},
"required": ["token", "id", "command"]
}
}
但是这样的事情对验证者来说还是可以的:
{
"badtoken": "abc123",
"badcommand": "123"
}
命令行:
$ jsonschema -i file.json schema.json
$ validate-json file.json schema.json
为什么它不起作用?
答案 0 :(得分:0)
实际上,我想制作一个定义列表然后使用它们:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"definitions": {
"header": {
"type": "object",
"properties": {
"token": { "type": "string" },
"id": { "type": "number" },
"command": { "type": "string" }
},
"required": ["token", "id", "command"]
}
},
"$ref": "#/definitions/header"
}
验证按预期工作。