Joi - 已知和未知键的混合

时间:2018-06-18 21:36:14

标签: node.js joi

我正在尝试创建一个joi架构,其中有一堆已知和未知的密钥。

Context()

基本上前4个键总是在那里,但最后一个键是键,后缀是0-100的随机数。我知道你可以做一个正则表达式模式,但我想要对前4个键进行完全独特的验证。

1 个答案:

答案 0 :(得分:1)

我已经假设了每个字段的实际有效性,但这将同时验证属于key[0-100]: 'string'模式的已定义字段和变量字段。

要取消的关键方面是使用.pattern()

Joi.object().keys({
    dogname: Joi.string(),
    catname: Joi.string(),
    dogage: Joi.number().integer().positive(),
    catage: Joi.number().integer().positive()
}).pattern(/^key[0]|[1-9][0-9]?|100/, Joi.string());