nodejs在同一台服务器上部署并同时运行两个或以上服务端时,一个服务用户登录后会挤掉另一个用户的问题

时间:2023-03-08 22:38:19

问题描述:一台服务器,部署了两个或以上不同的Web服务,服务A的用户在登陆后,服务B的用户也登陆,此时服务A的用户在点击页面时,会返回登陆页面。

问题根源:浏览器保存的session相同,即cookie相同

解决办法:

app.use(expressSession({
secret: 'keyboard cat',
resave: false,
saveUninitialized: true,
name: 'aaa' //这里的name值得是cookie的name,默认cookie的name是:connect.sid
}));

  因为默认的cookie的name是‘connect.sid’,所以如果没有做修改的话,会出现上述服务A的用户挤掉用户B的情况,在app.js中设置session的name值即可。