基本上,我的目标是使用post方法为所有路由调用一个中间件函数,并在进入队列中的下一个中间件函数之前对其进行清理。
我正在尝试使用中间件功能(在我的情况下为 validator.sanitisation ),该功能仅针对某些req.body字段调用表达消毒中间件,并最终调用next()。我尝试了各种方法。但是似乎没有任何作用。我附上了最近使它起作用的一种尝试。但以失败告终:(
服务器中的路由器摘要:
app.post('/*',validator.sanitisation);
Validator。消毒功能:
module.exports.sanitisation = function(req,res,next){
var sanitisationArray = [];
for(i in req.body){
if(i != req.body.password){
var x = sanitizeBody(i).trim().escape();
sanitisationArray.push(x);
}
}
sanitisationArray.push(function(){
next();
});
return sanitisationArray;
}
这样,我必须使用post方法使所有路由都调用此函数,并在进入队列中的下一个中间件函数之前对其进行清理。预先感谢。