Json Schema验证:不允许除模式中声明的字段之外的字段

时间:2014-12-01 08:23:04

标签: json validation jsonschema

假设我有类似

的架构
fname: string
lname: string
age: string

它们都不是必需的。用户可以向我发送上述任何属性,但任何其他未声明的属性。他们可以传递给我fnamelnameage或全部。但是,如果他们通过我所有的和middle_name之类的其他财产,那么该邮件应该被拒绝。

我如何定义这样的架构?

1 个答案:

答案 0 :(得分:50)

您可以创建json-schema并使用选项:

additionalProperties = false

这样您只允许在属性中定义的属性。在你的情况下:

{
    "properties": {
        "fname": {"type": "string"},
        "lname": {"type": "string"},
        "age": {"type": "string"}
    },
    "additionalProperties": false
}