NodeJS 发送自定义值来连接兼容的中间件?

klr1opcd  于 2023-06-05  发布在  Node.js
关注(0)|答案(1)|浏览(183)

我有一个Express服务器,我正试图编写一些中间件来检查用户是否具有指定的级别,但我不知道如何将level值传递给中间件。
app.js示例:

app.get('/restricted',verify.auth('4') , routes.index);

auth.js示例

exports.verify = function(req, res, next, requiredLevel) {
    if(userLevel>=requiredLevel){next};
}
mhd8tkvw

mhd8tkvw1#

试试这个

verify.auth=function(requiredLevel){
 return function(req,res,next){
  // requiredLevel is visible here ..
  // manipulate req,res
   //..
  // call next middleware
  next();
 }
}

还可以使用会话,这样就不会让用户级别由user指定。

相关问题