1.例如a导入b这个包,b导入a这个包,a再导入b这个包,诸如此类的属于循环引用
2.正常的步骤是,请求来了先到router,然后路由这个地方会先去执行我们的middlewares里面的这个中间件(JWT的auth认证的中间件),在这个中间件里面它又调用了controller里面返回响应的方法
3.在ctx里面取userID的时候在controller里面引用了middlewares
解决方法:改代码
我们可以把ctx,就是常量的定义从middlewars这层拿出来,放到controller这层,然后在middlewars这一层把controller同意一下