Frage

Ich versuche, die Yahoo Social Python-SDK zu verwenden, um einen Benutzer Kontakt durch oAuth zu erhalten. Dies ist für eine Webapp auf App Engine ausgeführt wird. SO habe ich alles eingerichtet durch den oAuth Tanz zu laufen, den Austausch von Verbrauchern Schlüssel und Verifizierer und alles, was Jazz. Ich speichere das Token und kann wiederverwendet werden ein Benutzer Kontakte abrufen, bis das Token die eine Stunde später abläuft. Also, gibt es jemand da draußen, die den Python-SDK verwendet hat und kann mir sagen, was mit diesem einfachen Code falsch ist:

import yahoo.application
CONSUMER_KEY      = '####'
CONSUMER_SECRET   = '##'
APPLICATION_ID    = '##'
CALLBACK_URL      = '##'
oauthapp      = yahoo.application.OAuthApplication(CONSUMER_KEY, CONSUMER_SECRET, APPLICATION_ID, CALLBACK_URL)
oauthapp.token = yahoo.oauth.AccessToken.from_string(access_token) #access_token is legit string pulled from datastore
oauthapp.token = oauthapp.refresh_access_token(oauthapp.token)
contacts = oauthapp.getContacts()

der Lauf führt den folgenden Fehler:

'oauth_token'<br>
Traceback (most recent call last):<br>
File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/webapp/__init__.py", line 513, in __call__<br>
handler.post(*groups)<br>
File "/base/data/home/apps/testproj/2.345270664321958961/scripteditor.py", line 1249, in post<br>
oauthapp.token = oauthapp.refresh_access_token(oauthapp.token)<br>
File "/base/data/home/apps/testproj/2.345270664321958961/yahoo/application.py", line 90, in refresh_access_token<br>
self.token = self.client.fetch_access_token(request)<br>
File "/base/data/home/apps/testproj/2.345270664321958961/yahoo/oauth.py", line 165, in fetch_access_token<br>
return AccessToken.from_string(self.connection.getresponse().read().strip())<br>
File "/base/data/home/apps/testproj/2.345270664321958961/yahoo/oauth.py", line 130, in from_string<br>
key = params['oauth_token'][0]<br>
KeyError: 'oauth_token'<br>

Grundsätzlich, wenn ich die Zeile mit refresh_access_token Kommentar aus, und das Token nicht abgelaufen ist, ist dieser Code funktioniert, und ich bekomme die Benutzer Kontakte. Aber mit refresh_acces_token, scheitert es an dieser Linie. Kann mir jemand eine Hand geben?

War es hilfreich?

Lösung 2

Gelöst. Aus Gründen kann ich jetzt nicht mehr funktioniert, der obige Code verstehen einfach. Es könnte ein Problem auf Yahoos Ende gewesen, aber ich kann wirklich nicht sicher sein. Es ist schon seit zwei Wochen läuft gut.

Andere Tipps

Sieht aus wie etwas falsch mit vorbei params. Versuchen Sie zu debuggen oauth_token Variable.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top