我一直在嘗試使用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