我正在考虑在我的节点应用程序上实现remember-me身份验证。我已经设法通过在我的快速会话中向我的cookie添加参数来使所有会话都有一个cookie。
app.use(express.session({
secret: constants.session_secret,
store: new MemcachedStore({
hosts: [config.memcached.host + ':' + config.memcached.port]
}),
cookie: {
maxAge: 300000, // <-- This line
httpOnly: true
}
}));
但是,我希望允许用户通过在登录页面上添加“记住我”复选框进行选择。
我非常感谢任何提示或文章,以便更好地了解如何实现这一目标。
答案 0 :(得分:0)
您可以随时更新会话。 app.use只是中间件,您可以在此之前声明一个以执行任何逻辑。
// any route function(req, res) or middleware
var hour = 3600000
req.session.cookie.expires = new Date(Date.now() + hour)
req.session.cookie.maxAge = hour
req.session.save(function(err) {
// session saved
})
请参阅会话项目页面以获取更多信息https://github.com/expressjs/session