2011-05-08 41 views
1

如何使用Facebook Python SDK發佈到Facebook?我試圖使用做到這一點:Facebook Python SDK

self.Facebook = facebooksdk.GraphAPI(oauth_token) 
self.Facebook.put_object("me", "feed", message="Hello World.") 

這是我的回溯:

Traceback (most recent call last): 
File "epistle.py", line 559, in send 
self.Facebook.put_object("me", "feed", message="Hello World.") 
File "/home/logan/epistle/facebooksdk.py", line 124, in put_object 
return self.request(parent_object + "/" + connection_name, post_args=data) 
File "/home/logan/epistle/facebooksdk.py", line 177, in request 
response["error"]["message"]) 

facebooksdk.GraphAPIError: Bad signature 

誰能幫我想出解決辦法?

回答

1

您是否正確獲取oauth_token值?錯誤的簽名表示SDK向Facebook簽署了請求,但該令牌與Facebook的API服務器所期望的不匹配。當您從Facebook cookie中提取oauth_token(如果您使用Javascript SDK登錄Facebook)或您的OAuth握手已正確執行時,我會檢查您是否使用了正確的Facebook應用程序密鑰和密碼。

+0

有什麼辦法從重定向URL解析OAuth令牌嗎? – loganfynne 2011-05-08 14:47:22

+0

Yep:你會得到一個代碼(重定向看起來像這樣:http:// YOUR_URL?code = A_CODE_GENERATED_BY_SERVER)。您需要拉取該參數,然後回撥以獲取令牌(如下所示:https://graph.facebook.com/oauth/access_token? client_id = YOUR_APP_ID&redirect_uri = YOUR_URL& client_secret = YOUR_APP_SECRET&code = THE_CODE_FROM_ABOVE)並且會給您你想要的oauth標記。我老實說,沒有在http://developers.facebook.com/docs/authentication/上詳細說明這些問題。 – Femi 2011-05-08 15:06:59