我在Flask中使用会话过期。理想情况下,我希望在会话到期后闪烁相应的消息并重定向到登录页面。好像没有办法从cookie中获取到期信息来测试,或者我错过了什么?
答案 0 :(得分:1)
如果会话已过期,则会话cookie不再出现在浏览器中。
From the docs,session
是一个python字典。
会话对象的工作方式与普通的dict一样......
例如,您可以通过以下方式设置会话:session['username'] = 'xxxxxx'
。
要检查该Cookie是否仍然可用,请使用session.get('username')
。如果它返回None
,则cookie不存在,否则,cookie就会出现。
支票变为:
if not session.get('user'):
flash('Not so fast! Kindly login to view that page')
return redirect(url_for('login'))
else:
#...Do something with logged-in user
Flask-Login和Flask-Session是两个可以很好地处理用户登录和会话的扩展程序。