自定义响应消息,validation节点js中的所有必需参数

我是NodeJS和Express的新手,我想validationAPI参数。 现在我通过以下方式validation参数:

if(!req.body.parametername) return res.send({"message": "Please provide parametername"}); if(!req.body.parametername) return res.send({"message": "parametername can not be blank"}); 

但是我想让回复如下所示:

 { "username": [ "This field is required." ], "password": [ "This field can not be blank." ] } 

这是我想要的,如果参数无效或没有提供的响应。

你可能会发现快速validation器是你在这里所需要的。 特别是这一部分:

 req.assert('email', 'required').notEmpty(); req.assert('email', 'valid email required').isEmail(); req.assert('password', '6 to 20 characters required').len(6, 20); var errors = req.validationErrors(); // Or req.asyncValidationErrors(); var mappedErrors = req.validationErrors(true); // Or req.asyncValidationErrors(true); 

mappedErrors将如下所示:

 { email: { param: "email", msg: "valid email required", value: "<received input>" }, password: { param: "password", msg: "6 to 20 characters required", value: "<received input>" } }