JSON Schema验证整数属性的一系列数字

时间:2018-02-02 12:30:07

标签: json jsonschema

我使用TV4来验证我的架构,我看到这个lib使用Json Schema模型来验证JSON。

但我没有找到办法进行特定的验证。

我有一个整数属性,这个属性只能有一些数字。例如,我的有效数字是10,20,30和40,所以如果我输入一些不同于这些数字的数字,我需要显示验证错误。

有哪些方法可以在JSON Schema中进行此特定验证?

1 个答案:

答案 0 :(得分:3)

我不确定您是否需要enum,或者您希望整数值为10的倍数。

对于enum,您有一组允许的值。例如:

{
  "type": "string",
  "enum": ["red", "amber", "green"]
}

source

如果您希望值只是数字的倍数,则需要multipleOf

{
    "type"       : "number",
    "multipleOf" : 10
}

source

这些链接适用于JSON Schema的draft-4版本,因为这是您正在使用的库所支持的,但是这些关键词也存在于JSON Schema的lates版本中(撰写本文时草稿7) )。您可以考虑使用支持更新版本的differenet库。