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

我创建了一个Django应用程序。该应用程序具有登录功能。 有人可以帮助找到一种方法,使用Facebook凭证登录或指向我一些教程来实现它吗?     
已邀请:
摘要; https://github.com/mlavin/django-all-access https://github.com/pennersr/django-allauth https://github.com/omab/django-social-auth https://github.com/uswaretech/Django-Socialauth https://github.com/hiidef/oauth2app https://github.com/timetric/django-oauth https://github.com/daaku/django-oauth-consumer https://github.com/eldarion/django-oauth-access https://github.com/dgouldin/python-oauth2 https://github.com/henriklied/django-twitter-oauth https://launchpad.net/django-openid-auth https://www.djangopackages.com/grids/g/oauth/ http://peterhudec.github.io/authomatic/ 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-oauth和django-openid-auth的基本代码进行精心设计,它实现了一个通用接口,用于定义来自第三方的新身份验证提供程序。 支持的提供商 谷歌OpenID Google OAuth Google OAuth2 雅虎OpenID 像myOpenID这样的OpenId Twitter OAuth Facebook OAuth Django的Socialauth 它能做什么 允许通过各种提供商登录。 从各个第三方网站导入联系人,以找出您的 朋友已经使用我们的服务。 在登录 这是一个通过各种第三方站点启用身份验证的应用程序。 特别是它允许登录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服务。 也很有用: http://developers.facebook.com/docs/guides/web/#login http://developers.facebook.com/docs/guides/canvas/#auth https://github.com/dgouldin/python-oauth2 https://github.com/henriklied/django-twitter-oauth https://launchpad.net/django-openid-auth https://www.djangopackages.com/grids/g/oauth/ http://peterhudec.github.io/authomatic/examples/django-simple.html     
我强烈推荐使用django-social-auth。自述文件非常完整,它还包含用于对其他OAuth源(如twitter)以及针对OpenID源(如Google和Yahoo)进行身份验证的信息。当然,如果您只是想要Facebook身份验证,那么您可以使用它进行身份验证。 还有一个包含的示例应用程序,它为您提供了一些示例代码。     
对于移动应用程序,如果你在后端使用django开发ios / android的应用程序,你可以做的是使用facebook ios / android api登录前端的facebook。但这不是您应用的最终登录。在Facebook登录后,Facebook会为您提供一个访问令牌,您可以将其与您的Facebook用户名/电子邮件一起发送到您的django后端。在后面,django可以使用像facebook python sdk这样的东西通过与facebook通信来验证用户名访问令牌对。如果经过验证,您最终可以登录应用的用户。 使用python sdk很简单,只需阅读教程,您就可以在几秒钟内与facebook通信。     
这样做的新方法是使用python-social-auth,因为django-social-auth被弃用而不支持python-social-auth,现在支持除Django之外的其他框架,如Flask,Pyramid,Web.py和Tornado。 它还支持其他主要的身份验证提供商,如微软,谷歌,Twitter,亚马逊,GitHub等等。 这是一个在Django上配置它的快速入门方法: 如何使用Django使用Google+ API登录?     
我完全可以推荐django-allauth。 它只是工作!     

要回复问题请先登录注册