的NodeJS /快递.重新生成会话

Eri*_*rik 5 node.js express

我有一个简单的nodejs/express应用程序.为了保存用户身份验证我使用:

req.session.auth = user;
Run Code Online (Sandbox Code Playgroud)

但是这个我已经找到了重生的方法:

req.session.regenerate(function (err) {
   req.session.auth = user;
});
Run Code Online (Sandbox Code Playgroud)

我的问题是:我应该使用重新生成方法还是只使用req.session.auth = user;

Roh*_*ngh 9

我会倾向于req.session.regenerate,但这取决于你想要做什么.如果您这样做req.session.auth = user,那么您将auth保存到会话中.但是,如果您使用regenerate,您实际上将清除整个会话,然后保存身份验证.

不同之处在于,使用第一种方法,当前会话中的任何其他会话变量将保持不变.您可以自行决定是否对您的网站有意义,或者您希望在身份验证完成后让会话保持清洁.