rep*_*cus 10 python web-applications flask python-2.7 flask-login
我已经使用flask-login进行身份验证,但似乎无论我使用什么用于烧瓶中的cookie持续时间,会话仍然是经过身份验证的.我是否为flask-login正确设置了配置变量?我试过了
app.REMEMBER_COOKIE_DURATION = datetime.timedelta(seconds=30)
app.config["REMEMBER_COOKIE_DURATION"] = datetime.timedelta(seconds=30)
Run Code Online (Sandbox Code Playgroud)
即使我关闭浏览器,等待一段时间,然后点击一个应该受到保护的网址,我仍然可以访问它.这与chrome的这个问题有关吗?.如果我清除我的cookie,我会得到预期的登录页面.所有这些让我觉得cookie超时没有被尊重.
另外,PERMANENT_SESSION_LIFETIME烧瓶做什么?
Aud*_*kas 18
REMEMBER_COOKIE_DURATION用于"记住我"功能,即即使关闭浏览器也要记住登录用户多长时间.单独的cookie用于此,其名称可以通过REMEMBER_COOKIE_NAME(remember_token默认情况下)设置.要强制登录会话在一段时间后过期(即使浏览器仍在运行),请设置PERMANENT_SESSION_LIFETIME保存应用程序设置的位置:
PERMANENT_SESSION_LIFETIME = datetime.timedelta(minutes=30)
Run Code Online (Sandbox Code Playgroud)
并在您的登录视图集中session.permanent = True:
from flask import session
@app.route('/login')
def login():
# ...
if login_user(user):
session.permanent = True
return redirect(request.args.get('next') or url_for('index'))
# ...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4349 次 |
| 最近记录: |