我一直在尝试使用sails来实现记忆功能。我想要一个会话持续到浏览器关闭。但是,如果在用户登录时勾选了复选框,我希望会话持续30天。我从这里使用了记住我的护照策略: https://github.com/jaredhanson/passport-remember-me 但它最终坐在帆船会议的最前面,而最先召唤的人最终取代了另一个。sails.js会话 - 记忆功能
3
A
回答
1
您可以设置cookie年龄到期。
我在我的登录控制器 - > passport.callback中做了。
passport.callback(req, res, function (err, user, challenges, statuses) {
...
if (req.param('remember', false) == true) {
req.session.cookie.maxAge = 1000 * 60 * 60 * 24 * 30;
}
req.login(user, function (err) {
...
}
}
这并不真的感觉不对,如果你登录时发送一些其他的饼干,它会影响他们的一生也是如此。
但它的工作原理,我找到了它,因为查找与帆相关的东西的文档就像挖油。
此外,我注意到Passport没有正确销毁会话,必须通过在注销控制器中调用req.session.destroy();
来手动完成。
0
基本上你可以自己设置cookie并设置只是调用登录功能之前手动
res.cookie('userSession', {
items: [1, 2, 3]
}, {
expires: new Date(Date.now() + 365 * 24 * 60 * 60 * 1000),
httpOnly: true
})
相关问题
- 1. 记忆IO功能?
- 2. Deassembling记忆功能/ C++
- 3. AJAX脚本停止记忆会话
- 4. Flex移动记忆用户会话
- 5. Spring安全记忆服务会话Cookie
- 6. Sails.js会话刷新
- 7. BufferedReader记忆功能之间的线
- 8. ASP.NET和用于记忆功能的cookie
- 9. 在会话间记住我的功能
- 10. PHP会话记住我功能
- 11. PHP会话,COOKIES和记住我功能
- 12. sails.js + passport.js:管理会话
- 13. 返回当记忆中的功能分配的功能
- 14. 支持递归功能的自动记忆功能
- 15. sails.js添加功能获取功能
- 16. F#会自动记忆吗?
- 17. Sails.js是从商店清除的会话
- 18. 使用Sails.JS和AngularJS处理会话/ cookie
- 19. Haskell和纯功能的记忆化导致
- 20. Android的对话框记忆混乱
- 21. 如何卡桑德拉在记忆功能的工作
- 22. 持久会话与passportjs + sails.js实现
- 23. 重复记忆Fortran中使用“吸气”功能时
- 24. 在Windows 10中禁用服务状态记忆功能
- 25. 如何通过变量来缓存::记忆功能
- 26. 在递归代码中断功能中实现记忆
- 27. 为什么需要应用于记忆功能?
- 28. 我的功能不记忆链接列表头
- 29. 不知道如何记忆子集功能
- 30. Malloc和免费的功能(优化你的记忆)
如果您使用[** sails-auth **](https://github.com/tjwebb/sails-auth),passoprt.js会话将自动保持活动状态。 –
是的,我现在正在使用持久会话,但我想知道是否有一种方法来动态控制maxage。例如,将它设置在/ config/sessions中,默认情况下在窗口关闭或制表符关闭时删除,除非记住我复选框被勾选,然后将会话设置为最后30天。也许我不明白护照会话如何与默认的风帆整合。 – Imprecation