两个正在运行的NodeJS实例之间的会话冲突

时间:2019-03-29 13:04:25

标签: mysql node.js session cookies conflict

我正在使用NodeJS进行个人项目,遇到一种奇怪的事情,我认为这是NodeJS的两个运行实例的会话之间的冲突。

简而言之,我有两个nodejs Web应用程序在计算机上的两个不同端口上本地运行,并使用相同的Mysql数据库通过Sequelize存储数据。在表“ user1”中定义了application1的用户,而在“ user2”中定义了应用程序2的用户。发生的情况是,如果我从应用程序1登录,然后在应用程序2上执行操作,例如注册新用户(在表“ user2”上),那么当我返回到user1的标签时,会话似乎要过期,我必须再次登录。

是否有人遇到过类似的问题或对正在发生的事情有任何了解。

我正在通过PassportJS管理登录,并且使用以下代码在app.js中定义了会话(我相信这与时间是否有关)

app.use(session({ secret:'key',
                  resave:true,
                  saveUninitialized:true,
                  cookie: { 
maxAge: new Date(Date.now() + (60 * 1000 * 30)) }
                }));

如果有帮助,每个应用程序的会话密钥都不同

非常感谢!

0 个答案:

没有答案