Logging out in Django Facebook?



首次使用Django facebook。

  1. 出于某种原因,如果我登录了facebook,但后来又注销了我的facebook帐户。我的应用程序使用默认Django用户登录,并使用过期的会话令牌,因为"用户已注销"。如果我重新登录facebook,Django应用程序将保持"注销"状态。

  2. 在上面的例子中,我尝试将@facebook_required_lazy附加到视图函数的顶部,但没有效果。在这个用例中,这个装饰器的预期行为是什么?该视图包含对get_persistent_graph的调用。

Django登录会话完全独立于Facebook登录会话。Facebook仅用于身份验证,即在登录时进行身份验证。但是登录会话是独立的,而不是连接的。因此,从Facebook注销根本不会影响您的Django会话。你仍然登录Django是正常的。

要从Django注销,您需要在模块django.contrib.auth中使用Django框架的logout方法,例如使用如下的自定义注销方法:

from django.contrib.auth import logout as django_logout
def logout(request):
    django_logout(request)
    return some_other_view(request)

最新更新