小编And*_*rud的帖子

使用JSON模式验证JSON输入

如果在输入文件中指定在架构中配置为要求的元素,则验证是否正常.如果你附加"maxItems":1,它不关心你是否在输入文件中添加另一个元素,验证器仍然将其视为有效的输入文件.

即:架构:

{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "type": "object",
    "properties": {
        "Books": {
            "type": "object",
            "minItems": 1,
            "properties": {
                "Book": {
                    "type": "object",
                    "minItems": 1,
                    "maxItems": 1,
                    "properties": {
                        "Author": {
                            "type": "string",
                            "minItems": 1,
                            "maxItems": 1
                        }
                    },
                    "required": ["Author"]
                }
            },
            "required": ["Book"]
        }
    },
    "required": ["Books"]
}
Run Code Online (Sandbox Code Playgroud)

输入文件:

{
    "Books": {
        "Book": {
            "Author": "Andreas",
            "Author": "Geir"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这不应该是无效的输入文件吗?

验证人:

validation schema json jsonschema json-schema-validator

0
推荐指数
1
解决办法
3600
查看次数