当Flask会话到期时调用函数

时间:2016-04-19 02:15:35

标签: python python-2.7 session flask

在我的Flask应用程序中,我正在保存与用户对应的文件,并希望在用户" session"到期。是否有可能检测到会话过期并立即调用函数?

2 个答案:

答案 0 :(得分:3)

有同样的问题并且不是通过使用内置的永久会话到期功能来解决它​​,而是将我自己的密钥添加到会话中并在每个请求之前检查它,如下所示:

@app.before_request
def before_request()

    now = datetime.datetime.now()
    try:
        last_active = session['last_active']
        delta = now - last_active
        if delta.seconds > 1800:
            session['last_active'] = now
            return logout('Your session has expired after 30 minutes, you have been logged out')
    except:
        pass

    try:
        session['last_active'] = now
    except:
        pass

答案 1 :(得分:0)

是的,可以运行一个循环来查看session ['key'] == None,如果条件变为true,则调用该函数。我希望这有帮助!!!