在Node.js + Express应用中设置空闲会话超时和最大会话超时,通常涉及到会话管理和中间件的使用。以下是实现这一功能的步骤:
以下是一个示例代码,展示如何在Node.js + Express应用中设置空闲会话超时和最大会话超时:
express-session
中间件首先,安装express-session
中间件:
npm install express-session
然后在Express应用中配置会话超时:
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小时
expires: new Date(Date.now() + 3600000), // 设置过期时间
httpOnly: true, // 防止客户端JavaScript访问cookie
secure: true // 仅在HTTPS下传输cookie
},
rolling: true, // 每次请求时重置会话过期时间
idleTimeout: 1800000 // 空闲会话超时时间,30分钟
}));
app.get('/', (req, res) => {
res.send('Hello World!');
});
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
express-session
中间件在其他中间件之前使用。cookie.maxAge
和cookie.expires
设置正确。通过以上步骤和示例代码,你可以在Node.js + Express应用中成功设置空闲会话超时和最大会话超时。
领取专属 10元无门槛券
手把手带您无忧上云