Express会话(Session) 是一种在服务器端存储用户信息的机制,用于跟踪用户在应用程序中的状态。会话通常通过一个唯一的会话ID来标识,该ID会被存储在客户端的cookie中,并在每次请求时发送回服务器。
会话过期时间(Session Expiry Time) 是指会话在服务器端保持有效的时间长度。一旦超过这个时间,会话将被视为无效,用户需要重新登录。
以下是一个使用 express-session
中间件设置会话过期时间的示例:
const express = require('express');
const session = require('express-session');
const app = express();
// 设置会话中间件
app.use(session({
secret: 'your-secret-key',
resave: false,
saveUninitialized: true,
cookie: {
maxAge: 3600000 // 1小时(单位为毫秒)
}
}));
app.get('/', (req, res) => {
if (req.session.views) {
req.session.views++;
res.send(`Views: ${req.session.views}`);
} else {
req.session.views = 1;
res.send('Welcome to the session demo. Refresh!');
}
});
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
cookie.maxAge
设置正确。通过以上方法,可以有效解决Express会话过期时间和日期设置错误的问题。
领取专属 10元无门槛券
手把手带您无忧上云