1
我正在使用express-session模块来设置具有到期年龄的会话。在这个年龄之后,当页面刷新时,Cookie将被删除。但是,如用户注销时,我想强制删除该Cookie。我已经成功地摧毁了使用req.session.destroy.
如何强制使用快速会话删除会话ID cookie?
我试图使用会话:
res.clearCookie('SID').status(200).send('Page');
内req.session.destroy,
虽然,如果我查看我看到的内容设置为无浏览器cookie的详细信息,尽管cookie不会自行删除,但过期日期设置为Thursday, 1 January 1970 at 01:00:00,
。我还在会话存储配置中设置了unset: 'destroy'
,但这并未解决我的问题。
中间件:
app.use(session({
store: new MemoryStore({
checkPeriod: 86400000
}),
cookie: {
secure: true,
maxAge: 10000
},
secret: secret,
resave: false,
saveUninitialized: false,
name: 'SID',
unset: 'destroy'
}));
在此先感谢。
您好,感谢试图帮助。我做了req.session.cookie.expires = new Date(0);但这似乎甚至没有设置cookie上的截止日期,它只是保持在配置中的默认设置。 –
尝试使用'new Date(Date.now()+ hour)'的确切代码'也使用'req.session.save(function(err){})'为客户端保存它吗? @MatthewChristopher – turmuka
小时未定义。我也没有像快速会议那样设置会话,我将它设置为这样:req.session.user = value; –