目前,我在高速公路上工作,使用express validator进行验证,使用Multiparty处理多部分表单。
情况是,当我想断言我的文本表单时,express-validator没有按它应该的方式工作,因为我也使用multiparty。
这是我的密码。
const express = require('express');
const app = express();
const expressValidator = require('express-validator');
const multiparty = require('multiparty');
app.use(expressValidator({
errorFormatter: function(param, msg, value) {
var namespace = param.split('.')
, root = namespace.shift()
, formParam = root;
while(namespace.length) {
formParam += '[' + namespace.shift() + ']';
}
return {
param : formParam,
msg : msg,
value : value
};
}
}));
app.post('/store', (req, res, next)=>{
const form = new multiparty.Form();
form.parse(req, (err, fields, files)=>{
req.assert('name','Store name is required.').notEmpty();
req.assert('description', 'Store Description is required.').notEmpty();
req.assert('category', 'Store Category is required.').notEmpty();
const errors = req.validationErrors();
if(errors){
console.log(errors);
}else{
// upload the file and save the data;
}
});
});
Console.log(错误)结果总是返回一个包含3个对象的数组,就像我在名称和描述字段中给出值一样,它仍然返回。

我读过类似的问题Here,但仍然不能解决我的问题。帮帮我。
问题是如何使用Express验证器和多方一起验证我的字段??
发布于 2017-01-13 12:05:54
在本例中,您是否使用req.getValidationResult().查看验证结果(我在docs中看到过):
req.getValidationResult().then(function(result){
})https://stackoverflow.com/questions/41633725
复制相似问题