私が次のようなスキーマを持っていると仮定します
fname: string
lname: string
age: string
それらのどれも必要ありません。ユーザーは、上記の属性のいずれかを私に送信できますが、宣言されていないものは何も送信できません。 fname
、lname
およびage
またはすべてを渡すことができます。ただし、middle_name
などのすべてのプロパティと追加のプロパティが渡された場合、メッセージは拒否されます。
このようなスキーマをどのように定義しますか?
json-schema を作成して、オプションを使用できます。
additionalProperties = false
これにより、プロパティで定義された属性のみを許可できます。あなたの場合:
{
"properties": {
"fname": {"type": "string"},
"lname": {"type": "string"},
"age": {"type": "string"}
},
"additionalProperties": false
}