如何使用express-validator

时间:2016-09-28 19:46:34

标签: node.js validation express

我在我的Nodejs应用中使用 express express-validator 。我想检查是否存在至少一个传入参数。它的任何一种或组合。

假设我的服务接受2个参数。我想确保客户提供至少其中一个

以下代码仅适用于一个。但我不知道如何制作它或者。

req.checkBody('param1', 'Mandatory field param1 not populated').notEmpty();

2 个答案:

答案 0 :(得分:0)

您可以使用多个验证链并使用oneOf函数来验证至少1个验证链。

https://www.npmjs.com/package/express-validator#oneofvalidationchains-message

答案 1 :(得分:0)

假设您要更新一个模型,该模型具有idstatuscontent ...例如社交媒体帖子。您的控制器可能支持更新模型的status或其模型content。因此,您可以执行以下操作:

export const updateModelValidation = [
    param('id').exists().isNumeric(), // <-- required model identifier
    oneOf( // <-- one of the following must exist
        [
          body('status').exists().isString(),
          body('content').exists().isString(),
        ],
    ),
];