【发布时间】:2015-11-10 22:46:01
【问题描述】:
我们正在运行一个带有 express 4.6.1 cookie parser 1.3.2 connect-flash 0.1.1 和 express session 1.7.0 的 node.js 应用程序。
我们使用 Flash 在重定向后在页面上显示消息,有时将数据存储在 req.session 中,以便在用户犯错需要重新输入时自动填写表单。最近我们开始在集群模式下使用 pm2,大多数事情似乎都可以正常工作,但我们注意到在重定向后我们丢失了闪存数据和存储在 req.session 中的数据。
这是一个例子:
req.flash("signup", errorString);
req.session.storedData = {};
req.session.storedData.username = "";
req.session.storedData.password = req.body.password;
req.session.storedData.email = req.body.email;
req.session.storedData.emailConfirm = req.body.emailConfirm;
res.redirect(problemRedirectPath);
这来自在用户尝试注册后接受请求但出现某种错误的端点。如果我们在没有集群模式下运行,会话数据和闪存都会正确显示,但如果我们在集群模式下运行,它们几乎总是会丢失(并非总是:/)
在集群模式下有更好的方法吗?
【问题讨论】:
标签: node.js session express pm2