我有c#mvc web應用程序。根據電子郵件和密碼有簡單的登錄頁面。現在我有這樣的需求: 當用戶登錄系統時,同一電子郵件地址的所有活動會話都將註銷。 我該如何做到這一點?MVC註銷同一用戶登錄後的所有活動會話
1
A
回答
2
您可以使用Session.Abandon()
或Clear()
放棄當前會話,但如果有多人登錄時使用的同一個地址,這不會解決這個問題。
你必須建立檢測;例如,您可以更新代表您的用戶的表上的標誌,然後在其他用戶的會話中定期檢查表是否重新登錄。或者當用戶登錄時,在數據庫表中創建令牌截止日期;將該令牌與Cookie中的用戶相關聯。註銷或重新登錄時,可能會使與該電子郵件地址關聯的令牌無效,並且每個用戶在嘗試訪問應用程序時可能會被應用程序拒絕檢查令牌是否已過期。
1
的Abandon
方法應該工作(MSDN):
Session.Abandon();
如果你想刪除的會話中使用的特定項目(MSDN):
Session.Remove("YourItem");
如果你只是想清除你可以做的價值:
Session["YourItem"] = null;
如果你wan t清除所有鍵:
Session.Clear();
如果這些都不適合你,那麼可怕的事情正在發生。我會檢查以確定您分配值的位置,並確認清除值後它不會被重新分配。
簡單的檢查,做到:
Session["YourKey"] = "Test"; // creates the key
Session.Remove("YourKey"); // removes the key
bool gone = (Session["YourKey"] == null); // tests that the remove worked
相關問題
- 1. Rails.cache.clear正在註銷所有登錄用戶(清除會話)
- 2. 註銷的NodeJS所有用戶會話
- 3. 自動註銷其他登錄會話
- 4. Rails - 列出所有活動的登錄/用戶會話?
- 5. 註銷Facebook會話和啓動登錄活動
- 6. 用戶註銷後,會話超時再次登錄asp
- 7. https會話登錄/使用java註銷
- 8. CakePHP的會話登錄註銷情況
- 9. 登錄/註銷會話的問題
- 10. Android:所有活動的登錄和註銷
- 11. 用戶登錄會話超時註銷OOP登錄/註冊系統
- 12. 註銷時註銷所有活動
- 13. C#help !!會話自動註銷後重新登錄
- 14. 創建登錄和註銷會話
- 15. 登錄和註銷會話android
- 16. 登錄,註銷和會話行爲
- 17. PHP會話登錄和註銷
- 18. PHP和會話登錄和註銷
- 19. PHP:登錄和註銷會話
- 20. 會話處理和登錄/註銷
- 21. Twitter4J登錄/註銷和會話細節
- 22. Java Servlet nullPointerException登錄註銷會話
- 23. 使用Spring跟蹤用戶登錄和註銷會話跟蹤
- 24. Android - 註銷所有活動
- 25. 如果在一個頁面上登錄,從所有頁面註銷用戶mvc
- 26. SimpleMembership - 用戶會話日誌 - 登錄註銷歷史
- 27. Active Directory用戶登錄和註銷會話歷史
- 28. 如何在mvc註銷後獲取用戶登錄ID
- 29. ZF3註銷一些非活動會話後
- 30. Laravel - 會話數據生存註銷/登錄,甚至針對不同的用戶