我可以将会话变量设置为立即输出,但是如果我再次访问路由(甚至不刷新页面),则var再次变得不确定。我想念什么?即使页面已刷新,如何保存var?

在app.js中

var session = require('express-session');
app.use(session({secret: 'asecret',
  cookie: {
    path: '/',
    expires: false, // Alive Until Browser Exits
    httpOnly: true
  }}));


在Index.js中

var sess ="";

router.get('/getSubmit', function(req, res){
    var socket = req.app.get('socketio');
    sess = req.session;

   sess.avar = "stuff";
   console.log(sess.avar); //prints

  console.log(sess.test); //will not ever print although has been set
  if (sess.test == undefined) {
      sess.test = "stuff";
      console.log(sess.test); //prints
  }

}

最佳答案

当您使用socket.io时,添加:

sess.save(function(err) {

    })


到最后。

10-07 19:00
查看更多