在重新启动服务器时,快速4会话不持续 [英] Express 4 Sessions not persisting when restarting server

查看:152
本文介绍了在重新启动服务器时,快速4会话不持续的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

  //会话
app.use(cookieParser ());
app.use(session({secret:some-secret}));

//注册
app.post(/ signup,function(req,res){
create_user(req.body.user,function(err,user_id){
req.session.user_id = user_id;
res.redirect(/ admin);
});
});

当我提交表单时,它将user_id保存到req.session。但是,当我重新启动服务器时,会话就会消失。



为什么不持续?我缺少一些配置?

解决方案

快速会话的默认会话存储是MemoryStore,顾名思义,存储会话仅在内存中。如果您需要持久性,则Express可以使用许多会话存储。一些例子:




I have an Express 4 app setup to have sessions.

// Sessions
app.use(cookieParser());
app.use(session({ secret: "some-secret" }));

// Signup
app.post("/signup", function (req, res) {
    create_user(req.body.user, function (err, user_id) {
        req.session.user_id = user_id;
        res.redirect("/admin");
    });
});

When I submit the form, it saves the user_id to the req.session. However, when I restart the server, the session is gone.

Why isn't it persisting? Am I missing some configuration?

解决方案

The default session store for express-session is MemoryStore, which as the name suggests, stores sessions in memory only. If you need persistence, there are many session stores available for Express. Some examples:

这篇关于在重新启动服务器时,快速4会话不持续的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆