Node.js Express:在app.get()和app.post()之前对每个HTTP请求执行挂钩?

时间:2012-10-28 04:08:47

标签: node.js express

我不想在每个app.get()的顶部放置身份验证功能,如何在app.get()之前在每个请求上执行代码?

2 个答案:

答案 0 :(得分:44)

在路线之前设置中间件:

function myMiddleware (req, res, next) {
   if (req.method === 'GET') { 
     // Do some code
   }

   // keep executing the router middleware
   next()
}

app.use(myMiddleware)

// ... Then you load the routes

答案 1 :(得分:7)

你也可以这样做:

app.all('*', auth.requireUser);