Skip to main content
 首页 » 编程设计

python之在 Django Facebook 中注销

2025年05月04日25tintown

第一次使用Django-facebook。

  1. 出于某种原因,如果我使用 facebook 登录,但后来注销了我的 Facebook 帐户。我的应用程序使用默认的 Django 用户保持登录状态, session token 已过期,因为“用户已注销”。如果我随后重新登录 Facebook,Django 应用会保持“退出”Facebook。

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

请您参考如下方法:

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

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

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