const saveSession(ctx, se){ //do somethink... ctx.session.se = se; //do somethink... } router .get('/login1', async (ctx, next) => { saveSession(ctx, 'login1'); ctx.body = 'done'; next(); }) .get('/login2', async (ctx, next) => { saveSession(ctx, 'login2'); ctx.body = 'done'; next(); })
如上代码,因为server的信息是保存在ctx
中的,所以如果要这样写个公共方法来保存session
的话就要传递ctx
变量,虽然这样做事可以实现效果
但是这样传递整个ctx感觉这样做好像不是很科学(?)
求各位解惑,谢谢!
可以采用中间件的写法: