Koa2:链式中间件怎么写?

Koa2: how to write chain of middleware?

所以在express中,我们可以有一个中间件链,复制一个例子:

middleware = function(req, res){
  res.send('GET request to homepage');
});

app.get('/', middleware, function (req, res) {
  res.send('GET request to homepage');
});

请问在 koa2 中写这个的等效方法是什么? 我正在考虑将它用于路由,对于每条路由,我都希望有一个中间件来检查用户是否已经登录。

谢谢!

如果您只是想确保中间件在每个 路由上运行,您所要做的就是在注册路由中间件之前注册中间件。

app.use(middleware);

只要你在之前你'use'你的路由器调用这个,它就会为每个请求调用。只要确保调用下一个函数即可。这就是您的中间件的样子:

function middleware(ctx, next) {

   // Authenticate user

   // Eventually call this
   return next();

}