2011-12-19 31 views
2

python oauth2和facebook上的任何提示。Django/Python oauth2 for facebook

自Facebook更新为OAuth2以来似乎没有什么信息。

无论如何,现有的Twitter库可以用来套装Facebook身份验证吗?

import oauth2 as oauth 

# Create your consumer with the proper key/secret. 
consumer = oauth.Consumer(key="your-twitter-consumer-key", 
    secret="your-twitter-consumer-secret") 

# Request token URL for Twitter. 
request_token_url = "http://twitter.com/oauth/request_token" 

# Create our client. 
client = oauth.Client(consumer) 

# The OAuth Client request works just like httplib2 for the most part. 
resp, content = client.request(request_token_url, "GET") 
print resp 
print content 

回答

4

如果您寻找现成的Django应用程式与您的项目整合,检查出authentication packages。其中大多数提供Facebook身份验证的服务已更新为支持OAuth 2协议已经有一段时间了。

另一方面,如果您想直接通过OAuth 2库与供应商合作,请参阅python-oauth2 - 有一个很长的示例,说明如何将它与Django的身份验证立即集成到自述。

+1

谢谢,我也找到了最好的解决方案,让我成为django-social-auth,我们将所有额外的信息传回给我,比如oauth令牌等。 – ApPeL 2011-12-21 08:21:33

0

如果希望所有用户的详细信息或正在融入更多Facebook的图形API,你应该看看: https://github.com/tschellenbach/Django-facebook

对于它是多么漂亮的一个演示:

http://www.fashiolista.com/intro_wide/

功能(从github复制)

  • 访问Facebook API,从:
    • 您的网站(使用JavaScript的OAuth)
    • 的Facebook画布页(建筑用Facebook应用程序)
    • 移动(或任何其他流给你一个有效的访问令牌)
  • Django的用户注册(转换Facebook用户数据转换为用户模型)
  • 使用Facebook数据向您的Django应用程序注册用户。 Facebook使用开放图API连接。
  • FQL Facebook的访问
  • 的OAuth 2.0兼容
  • 包括开放的Facebook(稳定和测试蟒客户端向图形API)
1

有一个称为FandjangoFacepy真棒项目。简而言之,您甚至不必知道甚至担心OAuth协议。