koa2中间件之间如何传递参数
如题,比如我有2个中间件 app.use(middleware1); app.use(middleware2); 我想将middleware1中执行的结果传递给middleware2,以前写express是可以用next(param)这种方式传递下去的,不知道koa2有没有什么办法传递参数呢?
4 回复
express可以用next(param)吗? 据我所知只能 next(error)吧?
express传递参数不是直接设置在req对象里吗, req.xxxxxxxxxx 然后下一个中间件也读req.xxxxxxxxx就好了
至于Koa应该一样把 设置 ctx.xxxxxxx (虽然我不会koa :P ) 看了下文档 推荐的是设置在ctx.state.xxxxxxx
把结果扔到ctx.state.xxx上,express确定不能next(param)的,只能挂到req.xxx上
来自酷炫的 CNodeMD
确实只能是把参数挂到ctx上
ctx是一个纯js object, 直接挂上面是ok的