Node.js刷新session過期時間的實現(xiàn)方法推薦
在Node.js中,我們通常使用express-session這個包來使用和管理session,保存服務端和客戶端瀏覽器之間的會話狀態(tài)。那如何才能實現(xiàn)當用戶刷新當前頁面或者點擊頁面上的按鈕時重新刷新session的過期時間呢?類似于ASP.NET中session會話狀態(tài),只要在一定的時間內頁面一直保持活動狀態(tài),session就不會過期。通過下面的代碼可以實現(xiàn)這個功能,我們在Node.js的代碼中加入下面的中間件:
// use this middleware to reset cookie expiration time
// when user hit page every time
app.use(function(req, res, next){
req.session._garbage = Date();
req.session.touch();
next();
});
這樣,每次當有請求過來時,該中間件都會重新修改session的過期時間,從而達到預期的效果。
然后,在代碼中加入對session的使用:
app.use(session({
secret: 'test',
resave: false,
saveUninitialized: true,
cookie:{
maxAge: 1000*60*60 // default session expiration is set to 1 hour
},
store: new MemcachedStore({
hosts: ['127.0.0.1:9000'],
prefix: 'test_'
})
}));
上面的session使用了memcached作為session的存儲方式,有關如何使用memcached可以參考Github上的這個地址https://github.com/balor/connect-memcached
當然,你也可以使用其它的session存儲方式,例如memoryStore,redis,mongoDB等等,使用方法都大同小異。
以上這篇Node.js刷新session過期時間的實現(xiàn)方法推薦就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
詳解Nodejs 通過 fs.createWriteStream 保存文件
本篇文章主要介紹了Nodejs 通過 fs.createWriteStream 保存文件,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-10-10
express + jwt + postMan驗證實現(xiàn)持久化登錄
這篇文章主要介紹了express + jwt + postMan驗證實現(xiàn)持久化登錄,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-06-06
NodeJS 將文件夾按照存放路徑變成一個對應的JSON的方法
這篇文章主要介紹了NodeJS 將文件夾按照存放路徑變成一個對應的JSON的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-10-10
三分鐘教你用Node做一個微信哄女友(基友)神器(面向小白)
這篇文章主要介紹了三步教你用Node做一個微信哄女友(基友)神器(面向小白),用node和wechaty微信網(wǎng)頁接口開發(fā)的一款小工具,可以定時給女朋友發(fā)每天的天氣情況,天氣提醒,每日一句。通過配置機器人api后還可以實現(xiàn)微信機器人自動陪女朋友聊天。,需要的朋友可以參考下2019-06-06

