[英]NodeJS / express session timing out early
在我的 NodeJs / Express 應用程序中,我使用標准的 session package 和 Passport 來處理會話和登錄。 我的問題是,該應用程序會在感覺 10 分鍾不活動后將用戶踢出,並強制他們再次登錄。 我的假設是,它必須與 session 配置有關,以我有限的理解,我認為配置允許 2 小時:
const session = require("express-session");
const PostgreSqlStore = require("connect-pg-simple")(session);
const sessionAge = 2 * 60 * 60 * 1000; // hour, min, sec, millisecond
var sessionConfig = {
name: "mysite",
secret: "verysecret",
resave: true,
saveUninitialized: false,
proxy: trustedTypes,
cookie: {
key: "cookieKey",
secure: true,
sameSite: false,
httpOnly: true,
maxAge: sessionAge,
},
store: new PostgreSqlStore({
pgPromise: db,
ttl: 2 * 60 * 60, //Hours, minute, seconds
}),
};
app.use(session(sessionConfig));
有什么我做錯了,或者我應該看看其他什么來找到這種行為的原因嗎?
store: new PostgreSqlStore({
pgPromise: db,
ttl: 2 * 60 * 60, //Hours, minute, seconds
})
我認為您的 PostgreSQL 存儲ttl
屬性應該等同於 session 配置的maxAge
屬性
我發現顯然雖然默認情況下 session 確實在服務器上得到擴展,但如果沒有任何更改,它不會向瀏覽器發送更新的 cookie。 缺少的屬性是“滾動”屬性。
var sessionConfig = {
rolling: true,
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.