2011-05-18 27 views
4

我使用Twython作爲我的Twitter API包裝器,並使用oauth2來處理認證。我試圖通過twitter使用登錄,然後在oauth舞蹈之後將他重定向到動態生成的oauth_callback。然而,這似乎不可能直接用這些庫來完成。我的問題是,我的oauth客戶端(python-oauth2)不支持回調URL。我覺得這很奇怪,因爲這是Twython使用的默認oauth客戶端 - 他們爲什麼會打擾編寫代碼來適應動態回調的使用,然後將庫與不支持回調的oauth客戶端捆綁在一起? Line 54 is set to false,因此我的回調url永遠不會包含在請求令牌url中,如required in the oAuth 1.0a specspython-oauth2與Twitter的oauth_callback

我試過修改Twython和oauth2,但我一直遇到問題。我想知道是否有支持oauth_callback的python-oauth2的替代方法,或者是可以正確處理oauth的替代twitter庫。

+1

嘿!我是Twython的作者 - 這是一個需要解決的問題;正如我在此主題的另一評論中指出的那樣,我將在稍後修補它併發布它。謝謝! – 2011-05-23 09:10:40

+0

我很高興能夠使用。感謝Twython的偉大工作! – 2011-05-23 23:35:01

回答

9

找到了答案here

所有您需要做的是通過Twython參數callback_url與

resp, content = client.request(request_token_url, "POST",body=urllib.urlencode({'oauth_callback':my_callback_url}))

通知更換線205 Twython.py,如果你想嘰嘰喳喳尊重你oauth_callback參數,請求必須是POST。

+2

嘿!我是Twython的作者 - 這是一個很好的發現,我將在本週晚些時候添加一個補丁來修復它! ;) – 2011-05-23 09:10:10