Javascript 在两个路由器上获取会话

Javascript 在两个路由器上获取会话,javascript,express,Javascript,Express,我有两个路由器 路由器1 app.post ('/ consultations', function (req, res) { req.session.nombre = 'administrator'; console.log ('test', req.session.name); // there the session is saved well }); 路由器2 router.get ('/', function (req, res) { console.log

我有两个路由器

路由器1

app.post ('/ consultations', function (req, res) {

    req.session.nombre = 'administrator';
   console.log ('test', req.session.name); // there the session is saved well
});
路由器2

router.get ('/', function (req, res) {
    console.log ('retrieve session', req.session); // exit undefined
}
如何在两个路由器上获得会话

编辑: 我创建了一个中间件

function mymiddleware(req,res,next){
  req.session.nombre='MiNOMBRE';
}
我试图得到中间件

app.get('/miroute1',mymiddleware,(req,res) => {
      console.log(req.session.nombre);//
但从未进入 }

 app.get('/miroute2',mymiddleware,(req,res) => {
          console.log(req.session.nombre);//
but never enters
         }

我认为在中间件中,您必须调用
next()

next()将按顺序调用下一个中间件,在您的例子中是

(req,res) => {
      console.log(req.session.nombre);}

只要在会话管理中间件运行后将路由器添加到路由链中,那么两个路由器都应该可以访问会话数据。如果一个路由器不能访问会话属性,那么它可能在会话中间件运行之前运行,您需要修改它们添加到路由链的顺序,以便会话中间件首先运行。如果您向我们展示更多相关的代码,我们可以更具体地帮助您(例如这些路由器添加到链中的位置以及会话中间件的位置)。您可以扩展您的答案请app.get('/consultas',mymiddleware,function(req,res){console.log('BBBAAA',req.session);//never enter})function mymiddleware(req,res,next){console.log('MiddleWARE');//yes enter请求从未执行,它只进入中间件
(req,res) => {
      console.log(req.session.nombre);}