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; –