如何在python中编写会话维护登录?

时间:2014-02-07 05:56:19

标签: python html session

我正在用python开发一个项目。我想开发一个会话维护代码。我所做的是在用户登录时创建一个会话,只需占用当前时间并在其中添加30分钟并将其作为超时值存储到数据库中。 30分钟后会话过期。但根据我的专业知识,会话登录的工作原理如下。如果用户在10到15分钟内没有执行任何操作,则会议需要过期,但如果用户执行了整整一小时的任何操作,则会话不需要过期。但是,无论用户是否执行任何操作,我的登录会话都会在每30分钟后过期。所以我只想更改我的登录信息。所以任何人都知道我应该如何编写以转换我的逻辑,以便按照我们的期望执行。我们所做的工作如下:

通过以下方式在用户登录时创建会话:

sessions.new(user=user.id, token=token, timeout=datetime.datetime.now()+datetime.timedelta(minutes=30))  

会话维护的功能是:

def add_session(context):
context['session'] = None
context['user'] = None
session_user = bottle.request.get_cookie("user", secret=config.session_secret)
session_token = bottle.request.get_cookie("token", secret=config.session_secret)
if session_user and session_token:
    session = sessions.get(user=session_user, token=session_token)
    if session:
        if session.timeout and session.timeout < datetime.datetime.now():
            context['errors'].append("Your session has timed out.")
            sessions.remove(**session)
            return context
        context['session'] = session
        context['user'] = session.user.typed()
        return context
return context

提前致谢。

0 个答案:

没有答案