【发布时间】:2017-06-03 20:32:15
【问题描述】:
我有一个包含字符串的数组,例如:
[ 'foo', 'bar' ]
可能的值是有限的。例如,有效值为foo、bar 和baz。
现在,当数组只包含有效的值时,数组应该是有效的,没有超过一次的值,但它可以有任意数量的值。
有效数组的示例为[ 'foo' ]、[ 'foo', 'bar' ] 和[ 'bar', 'baz' ]。无效数组的示例为 []、[ 'foo', 'foo' ] 和 [ 'bar', 'something-else' ]。
如何使用 JSON 模式进行此验证?到目前为止,我已经找到了array 类型,它提供了minItems 和uniqueItems 属性。我还想不通的是:如何允许多个(但只有有效)值?我知道有enum,但这只允许一个值,而不是多个。 p>
有人可以帮忙吗?
PS:以防万一,我使用带有 Node.js 的 ajv 模块来运行验证。
【问题讨论】:
标签: arrays json validation jsonschema