假设我有以下模式:
fname: string
lname: string
age: string
它们都不是必需的。用户可以向我发送上述任何一个属性,但不能发送未声明的其他内容。他们可以传递给我fname
、lname
和age
或全部。但如果他们传递了全部并且还有像middle_name
这样的额外属性,则应该拒绝该消息。
我如何定义这样的模式?
假设我有以下模式:
fname: string
lname: string
age: string
它们都不是必需的。用户可以向我发送上述任何一个属性,但不能发送未声明的其他内容。他们可以传递给我fname
、lname
和age
或全部。但如果他们传递了全部并且还有像middle_name
这样的额外属性,则应该拒绝该消息。
我如何定义这样的模式?
additionalProperties = false
这样,您只允许在属性中定义的属性。对于您的情况:
{
"properties": {
"fname": {"type": "string"},
"lname": {"type": "string"},
"age": {"type": "string"}
},
"additionalProperties": false
}