django - django-session-timeout:如何自动断开连接(无需用户操作)
问题描述
我是 Django 的新手,并尝试使用 tierce 应用程序 django-session-timeout 实现“自动注销”它有效,但我想改善行为
会话在 settings.py 中设置的时间后过期,但没有刷新,因此它断开连接并重定向到登录页面,除非用户单击其他地方
换句话说,用户断开连接(因为用户会话过期)但不会自动重定向到登录页面 - >需要用户事件
是否可以在不编写我自己的中间件的情况下改进这一点?
设置.py
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'django_session_timeout.middleware.SessionTimeoutMiddleware',
]
LOGIN_URL = 'home'
LOGIN_REDIRECT_URL = 'home'
LOGOUT_REDIRECT_URL = 'home'
SESSION_EXPIRE_SECONDS = 900 # 900 - >15 minutes = 15 * 60
SESSION_EXPIRE_AFTER_LAST_ACTIVITY = True
SESSION_EXPIRE_AT_BROWSER_CLOSE = True
SESSION_SAVE_EVERY_REQUEST = True
解决方案
推荐阅读
- qt - 有没有办法让 QPushButton 背景透明,但添加图标?
- vhdl - 有人会帮我解决这个错误吗:std_logic_vector 不能有返回类型为 std_logic_vector 的操作数
- google-sheets - 向受保护工作表添加行的权限
- prolog - 插入(X,[],[X])。插入最后一个位置
- javascript - 刷新后继续倒计时
- javascript - 如何从获取请求中提取值?
- python - 如何使用 opencv 去除图像上的这些平行线噪声
- java - layoutinflater 不会膨胀整个布局
- python - Odoo 11 从计算字段中插入 one2many
- flutter - Dart/Flutter:如何从构造函数将某些内容打印到控制台中