Django是否在用户登录时刷新request.session对象



我正在Django应用程序中设置一个会话变量,如下所示:

request.session['something'] = True

之后,我将用户重定向到Login(via facebook - django-social-auth)。用户成功登录后,我的会话变量将丢失。我知道这一点是因为:-

if "something" in request.session -- is returning False

Django是在登录/注销时刷新会话对象(使用Django身份验证系统),还是我做错了什么?

根据login源代码:

def login(request, user):
    """
    Persist a user id and a backend in the request. This way a user doesn't
    have to reauthenticate on every request. Note that data set during
    the anonymous session is retained when the user logs in.
    """

所以,如果你在匿名request.session中设置了一些东西,它将在登录后出现。

login仅刷新会话if the existing session corresponds to a different authenticated user

logout总是刷新会话(源代码)。

希望能有所帮助。

最新更新