首页 > 解决方案 > 如何在 django 中注销非活动用户?

问题描述

我希望当用户在一段时间内不活动时删除会话。

我试过set_expiry(300)and SESSION_COOKIE_AGE = 5 * 60,但即使用户处于活动状态,会话也没有延长。

标签: django

解决方案


您有正确的注销部分设置,但您的系统没有通知会话表的活动请求,因此系统明确需要将您的新请求保存到会话表,这将更新超时到期。

在你的Settings.py

SESSION_EXPIRE_AT_BROWSER_CLOSE = True     # opional, as this will log you out when browser is closed
SESSION_COOKIE_AGE = 300                   # 0r 5 * 60, same thing
SESSION_SAVE_EVERY_REQUEST = True          # Will prrevent from logging you out after 300 seconds

推荐阅读