python-social-auth登录到第三方服务(如facebook)以及登录我的应用程序

时间:2014-05-14 03:03:33

标签: django

我正在尝试使用django python-social-auth来使用facebook auth,所以我不必避免用户注册。它运作良好 - 但是,当我退出时,它只是退出应用程序,但不是第三方服务(如Facebook)。问题是其他人可以进来输入facebook.com并进入用户帐户 用户没有登录到Facebook - 他们正在登录我的应用程序。他们不应该退出Facebook,因为他们专门没有登录到Facebook,而只是登录我的应用程序。

当我点击退出时,我该如何退出Facebook呢?实际上,我真正的问题是如何使用facebook和python-social-auth登录我的应用而不是Facebook?现有的行为似乎是一个坏主意。

settings.py:

SOCIAL_PIPELINE = (
'social.backends.pipeline.social.social_user',
'social.backends.pipeline.associate.associate_by_email',
'social.backends.pipeline.user.create_user',
'social.backends.pipeline.social.associate_user',
'social.backends.pipeline.social.load_extra_data',
'social.backends.pipeline.user.update_user_details',
)

1 个答案:

答案 0 :(得分:1)

我在早些时候遇到过同样的问题,但那次我使用了django_allauth。当您的应用程序注销时,您无法注销Facebook。我不知道django-social-auth,但这个答案可能有用,

Python Social Auth NotAllowedToDisconnect at /disconnect/facebook/1/

但我用facebook图解决了问题,

function logout_social() {
   FB.logout(function(response) {  // for facebook logout
  window.location.href = '/logout' // for my app logout
});
} 

How to logout the facebook using django-allauth?