如何在Django应用程序中进行Facebook登录?

rv_*_*v_k 42 python django facebook oauth facebook-oauth

我创建了一个Django应用程序.该应用程序具有登录功能.

有人可以帮助找到一种方法,使用Facebook凭证登录或指向我一些教程来实现它吗?

Ali*_*and 78

摘要;


Django的所有访问


django-all-access是一个可重复使用的应用程序,用于OAuth 1.0和OAuth 2.0提供商(如Twitter和Facebook)的用户注册和身份验证.

该项目的目标是使您可以轻松创建自己的工作流程,以便使用这些远程API进行身份验证.django-all-access将提供具有理智默认值的简单视图以及挂钩以覆盖默认行为.

http://allaccess-mlavin.dotcloud.com/上运行了一个简单的演示应用程序.此应用程序的完整源代码包含在存储库中.

Django的allauth


集成的Django应用程序集,用于验证,注册,帐户管理以及第三方(社交)帐户身份验证.

支持的流程

  • 注册本地和社交帐户
  • 将多个社交帐户连接到本地帐户
  • 断开社交帐户 - 如果仅保留本地帐户,则需要设置密码
  • 社交帐户的可选即时注册 - 没有问题
  • 电子邮件地址管理(多个电子邮件地址,设置主要)
  • 密码忘记了流程
  • 电子邮件地址验证流程

支持的提供商

  • Dropbox(OAuth)
  • Facebook(OAuth2和JS SDK)
  • Github上
  • 谷歌(OAuth2)
  • LinkedIn
  • 的OpenID
  • 人物
  • SoundCloud(OAuth2)
  • 堆栈交换(OAuth2)
  • Twitch(OAuth2)
  • 推特
  • 微博(OAuth2)

Django Social Auth


Django Social Auth是为Django项目设置社交认证/授权机制的简便方法.

使用来自django-twitter-oauthdjango-openid-auth的基本代码进行精心设计,它实现了一个通用接口,用于定义来自第三方的新身份验证提供程序.

支持的提供商

  • 谷歌OpenID
  • Google OAuth
  • Google OAuth2
  • 雅虎OpenID
  • 像myOpenID这样的OpenId
  • Twitter OAuth
  • Facebook OAuth

Django的Socialauth


它能做什么

  1. 允许通过各种提供商登录.
  2. 从各个第三方网站导入联系人,以找出您的哪些朋友已经使用我们的服务.

在登录

这是一个通过各种第三方站点启用身份验证的应用程序.特别是它允许登录via

  • 推特
  • Gmail的
  • Facebook的
  • 雅虎(基本上是开放的)
  • 的OpenID

oauth2app


oauth2app模块帮助Django站点运营商提供OAuth 2.0接口.该模块已注册为应用程序.

Django的的OAuth


这是David Larlet的django-oauth的分叉版本.

一个非常重要的区别是这个版本要求你在Django的缓存框架后面运行一个真正的缓存.

Django的OAuth的访问


支持的提供商

  • 推特
  • LinkedIn
  • 雅虎
  • Facebook(使用OAuth 2.0 - 功能齐全,但需要更多工作)
  • 可能是任何符合OAuth 1.0a标准的网站

Django的OAuth的消费者


django应用程序,提供用于使用OAuth服务的基础结构.它不是用于提供OAuth服务.


也很有用:


Bra*_*ery 18

我强烈推荐使用django-social-auth.自述文件非常完整,它还包含用于对其他OAuth源(如twitter)以及针对OpenID源(如Google和Yahoo)进行身份验证的信息.当然,如果您只是想要Facebook身份验证,那么您可以使用它进行身份验证.

还有一个包含的示例应用程序,它为您提供了一些示例代码.

  • django-social-auth现已弃用.继任者是https://github.com/omab/python-social-auth (5认同)

Sam*_*med 9

对于移动应用程序,如果你在后端使用django开发ios/android的应用程序,你可以做的是使用facebook ios/android api登录前端的facebook.但这不是您应用的最终登录.在Facebook登录后,Facebook会为您提供一个访问令牌,您可以将其与您的Facebook用户名/电子邮件一起发送到您的django后端.在后面,django可以使用像facebook python sdk这样的东西通过与facebook通信来验证用户名访问令牌对.如果经过验证,您最终可以登录应用的用户.

使用python sdk很简单,只需阅读教程,您就可以在几秒钟内与facebook通信.