2011-12-19 47 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協議。