0
我有幾個需求圍繞會話處理,我遇到了麻煩執行一個。如何禁止通過Express會話存儲的會話進行TTL刷新?
會話需要:
- 過期在30分鐘如果用戶已經不活動
- 在8小時內從過期時用戶先不管活動登錄。
我能夠配置項目1而不是項目2.每次用戶瀏覽應用程序時,cookie都會更新(時間+30分鐘)併發送回瀏覽器,但同時會話存儲TTL也刷新。最後一部分是我需要停下來的。
我相信TTL刷新是作爲快速會話的一項功能實現的。 Session.touch()被中間件調用,但是有一個設置會刪除這個動作嗎?
堆棧: 節點,快速,快速會話,connect-redis會話存儲。
配置:
app.use(session({
store: new RedisStore({
client: redis_client,
ttl: 28800 // 8 hours
}),
secret: config.redis_session_secret,
resave: false,
saveUninitialized: false,
cookie: {
path: '/',
httpOnly: true,
secure: false,
maxAge: 30 * 60 * 1000 //mins * seconds * milliseconds. session cookie will expire every 30 mins
},
rolling: true
}));
是的,我也這麼想。我只是想看看是否有已經實施的方式來表達這一點。 –