Twitter-API + OAuth: Kann nicht senden, status-updates, immer 401
Ich versuche, die Verwendung der Twitter-API und OAuth zu senden, status-updates (neue Tweets). Ich bin mit Shannon Whitley .NET-code-Beispiel http://www.voiceoftech.com/swhitley/?p=681 (wie empfohlen auf der Twitter-API-docs). Ich kann Lesen (GET) die Verwendung von OAuth ganz gut, aber wenn ich versuche zu senden, ein status-update über http ://twitter.com/statuses/update.xml (mit einem BEITRAG), gibt es ein 401 mit der folgenden XML-Code:
<?xml version="1.0" encoding="UTF-8"?>
<hash>
<request>/statuses/update.xml</request>
<error>Read-only application cannot POST</error>
</hash>
Ich schwöre, ich habe meine Anwendung verwenden, Lesen und schreiben, die genehmigen-Seite, bei Twitter (http ://twitter.com/oauth/authorize) sagt sogar "Die Anwendung TweeVerbs.com (Entwicklung) möchte die Möglichkeit zu zugreifen und diese aktualisieren Ihre Daten auf Twitter."
Doch es ist immer noch sagen "nur-Lese-Anwendung kann nicht nach". WTF!?
Habe ich gegoogelt, diese Fehlermeldung, bis ich blau im Gesicht. Ich habe irgendwo gefunden, dass sagte fügen Sie die querystring-paremeter oauth_access_type=schreiben an die redirect-URL, das geht auf die Twitter autorisieren Sie-Seite, die ich getan habe, aber es gibt mir immer noch einen 401.
Falls es hilft, hier die Daten, die erste zurück geschickt und firth gemäß der OAuth-workflow:
Anfrage Genehmigen Token:
http ://twitter.com/oauth/request_token?oauth_consumer_key=tViV8vAt4cqSKbGdPGWT7Q&oauth_nonce=2790042&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1244567068&oauth_version=1.0&oauth_signature=KzxcXN%2bQ0AJoAJ%2flQfzs8SLjC%2fQ%3d
Generiert Autorisieren Redirect URL:
http ://twitter.com/oauth/authorize?oauth_token=EpyBg3nJGOmtmBjRUAsqqaGHARb2F2F2VcccqHkwio&oauth_access_type=write
Genehmigen Bildschirm-Nachricht: "Die Anwendung TweeVerbs.com (Entwicklung) möchte die Fähigkeit, den Zugriff und die Aktualisierung Ihrer Daten auf Twitter. Diese Anwendung verwenden will Twitter für die Anmeldung, die Sie in der Zukunft. Melden Sie sich, wenn Sie eine Verbindung herstellen möchten, um ein anderes Konto als Sironfoot."
Get Access Token:
http ://twitter.com/oauth/access_token?oauth_consumer_key=tViV8vAt4cqSKbGdPGWT7Q&oauth_nonce=2016804&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1244567166&oauth_token=EpyBg3nJGOmtmBjRUAsqqaGHARb2F2F2vcccqhkwio&oauth_version=1.0&oauth_signature=%2bEVQUxUPLT%2b%2bkfaG0Vq1YJZXcAw%3d
Status-Update-API-Aufruf:
URL - http ://twitter.com/statuses/update.xml
POST-Daten - oauth_consumer_key=tViV8vAt4cqSKbGdPGWT7Q&oauth_nonce=5707692&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1244567268&oauth_token=19130957-nb89DjZhjCAzcbHUa96yRWHqlQFQIJ0Akyxpqnht1&oauth_version=1.0&status=HelloWorld&oauth_signature=WqA%2bWY0IxveeSJ7G3Ewy3whh1sE%3d
Status Update API call
ist es nicht an der fehlenden oauth_verifier
? Ich konnte nur post einschließlich dieser parameter als gut... Und oauth_callback
...Wow, es ist sowohl eine Frage-und eine sehr gute verkürzten Twitter-oauth-flow-memo. Meinen Tag gerettet, 1000 Tage später.
InformationsquelleAutor Sunday Ironfoot | 2009-06-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Weiß nicht, was das problem war, aber ich Sie gelöscht, mein Antrag die Anmeldung auf Twitter (Sie müssen sich registrieren apps in Twitter OAuth-Schlüssel usw.), und dann neu erstellt. Jetzt funktioniert es einwandfrei. Komisch, wahrscheinlich ein problem mit Twitter vermasseln.
Ich bin auch mit Tweetsharp (http://tweetsharp.com/), sehr zu empfehlen, es ist schön und hat eine fluent-API. Hinweis: die Umstellung auf Tweetsharp war nicht das Update hatte ich bereits umgestellt und hatte das gleiche problem, bis ich den löschen und neu app-Registrierung auf Twitter.
Gelöscht, neu erstellt und die twitter-app. Ich glaube nicht, dass ich irgendetwas anderes das zweite mal, aber es funktionierte.
Danke! Das ist wirklich retten mir das Leben. Twitter hat einen bug.
Ich brauchte nur zu klicken Sie auf "Wiederherstellen my access token" - Taste auf meiner app-Seite "Details". (Nicht sicher, ob dieser button existiert bei dieser Antwort wurde geschrieben.)
Tweetsharp ist jetzt ein verlassenes Schiff. twitterizer.net ist der jetzt-a-Tage Art der Kommunikation mit twitter asp.net
InformationsquelleAutor Sunday Ironfoot
Wenn Sie die Berechtigung zur Anwendung für den Zugriff auf Ihr Twitter-Konto, wenn die Anwendung im "nur-Lesen-Zugriff" - Modus und erhalten Sie die "nur-Lese-Anwendung kann nicht nach" Fehler nach dem ändern die Einstellungen der Anwendung zu sein "lese-und Schreibzugriff," dann haben Sie zu widerrufen Zugriff auf die Anwendung auf https://twitter.com/settings/connections und dann erneut autorisieren. Die "nur Lesen" access_token neigt zu klebrig sein, bis Sie Sie widerrufen.
Perfekt:) 🙂 thnx.. das hat mir sehr geholfen 🙂
InformationsquelleAutor abraham
Hoffe, das hilft.
InformationsquelleAutor Waqas
plus auch sehen, wenn Ihr system die CLOCK ist synchronisiert mit internet; unter windows kann man einstellen Datum Zeit Einstellungen
weil, wenn Sie die UHR nicht synchronisiert wird, erhalten Sie 401 unauthorized-exception; viel Glück
cheers
InformationsquelleAutor hira
Habe ich dont, dass jetzt schon mehrmals, ohne Erfolg, ich bin immer ein 401 Ausnahme beim anfordern einer acces token von twitter.
Ich bin mit Tweetsharp so gut wie du.
InformationsquelleAutor Proxdeveloper