如何验证本质上是动态的数组,例如某个时间字符串和一些时间对象

时间:2019-05-08 07:08:01

标签: joi json-schema-validator hapi

我正在使用@ hapi / joi。 我有一个动态存储值的数组,它存储字符串,空字符串(一个空数组)或一个对象({“ userid”:“ 111jh2jh322j3h2j3h”,“ msg”:1})。

所以会是这样:

type1-> member: []
type2-> member: ["firstString", "secondString"]
type3-> member: [{"userid": "111jh2jh322j3h2j3h", "msg": 1}, {"userid": "7875jh2jh3545hj3hth", "msg": 0}]

我很困惑如何在@ Hapi / joi上进行验证。

目前,我的实现方式是:

member: Joi.array().items(Joi.string().allow('')),

我知道,如果我们有一个存储在数组下的对象,那么我将进行验证,就像:

member: Joi.array().items(Joi.object({
      userid: Joi.string(),
      msg: Joi.number(),
    })),

为此,我们将提供任何帮助。预先感谢。

1 个答案:

答案 0 :(得分:0)

它将是这样的:

member: Joi.array().items(Joi.string().allow(''), Joi.object({
        userid: Joi.string(),
        msg: Joi.number(),
      })),