我有一个简单的nodejs / express应用程序。为了保存用户身份验证,我使用:
req.session.auth = user;
但this我找到了再生方法:
req.session.regenerate(function (err) {
req.session.auth = user;
});
我的问题是:我应该使用重新生成方法还是只使用req.session.auth = user;
答案 0 :(得分:9)
我倾向于req.session.regenerate
,但这取决于你想要做什么。如果你只是req.session.auth = user
,那么你将auth保存到会话中。但是,如果您使用regenerate
,您实际上将清除整个会话,然后保存身份验证。
不同之处在于,使用第一种方法,当前会话中的任何其他会话变量都将保持不变。您可以自行决定是否对您的网站有意义,或者您希望在身份验证完成后让会话保持清洁。