2016-07-20 10 views
0

Ich versuche, Twitter-Account von Benutzer über TwythonErhalten Zugriffstoken Fehler 401 in Twython

def twitter_view(request): 
twitter = Twython(APP_KEY, APP_SECRET) 
auth = twitter.get_authentication_tokens(callback_url='http://127.0.0.1:8000/confirm/', force_login=True) 

request.session['oauth_token'] = auth['oauth_token'] 
request.session['oauth_token_secret'] = auth['oauth_token_secret'] 
return HttpResponseRedirect(auth['auth_url']) 


def redirect_view(request): 
oauth_verifier = request.GET['oauth_verifier'] 
twitter = Twython(APP_KEY, APP_SECRET) 
final_step = twitter.get_authorized_tokens(oauth_verifier) 
request.user.twitter_oauth_token = final_step['oauth_token'] 
request.user.twitter_oauth_token_secret = final_step['oauth_token_secret'] 
request.user.save() 

return redirect('twitterapp:homepage') 

Ich erhalte

Twitter API returned a 401 (Unauthorized), Invalid/expired Token

Traceback (jüngste Aufforderung zuletzt) ​​veify:

File "/Users/bharatagarwal/my-venv/lib/python2.7/site-packages/django/core/handlers/base.py", line 149, in get_response response = self.process_exception_by_middleware(e, request)

File "/Users/bharatagarwal/my-venv/lib/python2.7/site-packages/django/core/handlers/base.py", line 147, in get_response response = wrapped_callback(request, *callback_args, **callback_kwargs)

File "/Users/bharatagarwal/projects/twitterproject/mysite/twitterapp/views.py", line 100, in redirect_view
final_step = twitter.get_authorized_tokens(str(oauth_verifier))

File "/Users/bharatagarwal/my-venv/lib/python2.7/site-packages/twython/api.py", line 379, in get_authorized_tokens ken'), error_code=response.status_code)

TwythonError: Twitter API returned a 401 (Unauthorized), Invalid/ expired To ken

+0

Mögliche Duplikate von [Authentifizierung mit Twython] (http://StackOverflow.com/Questions/16866323/Authentication-with-Twython) –

+0

Ich habe versucht, diesen Beitrag bereits gesehen, aber immer noch mit dem Problem konfrontiert. –

Antwort

0

Bei der zweiten Twython-Instanziierung müssen Sie die in der ersten st erhaltenen OAUTH_TOKEN und OAUTH_SECRET_TOKEN einschließen ep.

twitter = Twython(APP_KEY, APP_SECRET, OAUTH_TOKEN, OAUTH_TOKEN_SECRET)  

Es kehrt Ungültige Token, weil die Instanziierung Sie nicht die Token Sie erhalten enthielten verwenden.