2010-03-02 4 views
7

Ich benutze die folgende Methode URI, um Token von Twitter anfordern.Wie bekomme ich request_token mit OAuth mit twitter

Hinweis: Hier dienen neue Zeilen nur zur Anzeige.

http://twitter.com/oauth/request_token? 
oauth_consumer_key=9cS99b2406CUpATOeggeA& 
oauth_signature_method=HMAC-SHA1& 
oauth_signature=3e18bafc4c4fd6b23f988bcd1a8c0ab2d65db784 
oauth_timestamp=1267523137& 
oauth_nonce=56e66e9f8bd28b320f86a16407f9911d& 
oauth_version=1.0& 
oauth_callback=http://playground.com 

Aber es gibt Fehler "fehlgeschlagen Validierung Oauth Signatur und Token".

Die String Basis I Computer-Signatur verwendet wird, ist als Gebrüll:

GET& 
http%3A%2F%2Ftwitter.com%2Foauth%2Frequest_token& 
oauth_consumer_key%3D9cS99b2406CUpATOeggeA%26 
oauth_signature_method%3DHMAC-SHA1%26 
oauth_timestamp%3D1267523137%26 
oauth_nonce%3D56e66e9f8bd28b320f86a16407f9911d%26 
oauth_version%3D1.0%26 
oauth_callback%3Dhttp%3A%2F%2Fplayground.com 


mir bitte korrigieren, wo ich Fehler gemacht habe.

+0

Wenn Sie mit twitter signin gemacht haben, stellen Sie mir bitte Ihr Arbeitsbeispiel irgendwo wie Github oder Plunker –

Antwort

4

Ihr Problem ist mit der Reihenfolge der Parameter. Die Parameter für die Basiszeichenfolge müssen in der richtigen Reihenfolge sein. Wenn sie nicht in Ordnung sind, wird es Ihnen diesen Fehler geben.

So Ihre Basis String dies sein sollte ...

GET& 
http%3A%2F%2Ftwitter.com%2Foauth%2Frequest_token& 
oauth_consumer_key%3D9cS99b2406CUpATOeggeA%26 
oauth_nonce%3D56e66e9f8bd28b320f86a16407f9911d%26 
oauth_signature_method%3DHMAC-SHA1%26 
oauth_timestamp%3D1267523137%26 
oauth_version%3D1.0%26 
oauth_callback%3Dhttp%3A%2F%2Fplayground.com 

Beachten Sie, dass Ihre "Nonce" war nicht in der richtigen Stelle.

Außerdem wird normalerweise der Parameter "signature" an das Ende der Anforderungs-URL angehängt.

http://oauth.net/core/1.0a/#anchor46

Anhang A.5.1

+0

Ich bekomme immer noch den gleichen Fehler 'Fehler bei der Validierung Oauth Signatur und Token' – Amit

+0

Ich glaube, dass der 'oauth_callback' Parameter sollte auch sein die richtige Reihenfolge. Wenn ich die richtige Reihenfolge bezeichne, müssen diese beim Erstellen der Signatur in Ordnung sein. Wenn Sie immer noch ein Problem haben, bearbeiten Sie Ihren Beitrag und fügen Sie Ihre NEUE Basiszeichenfolge hinzu, damit wir sehen können, was es ist. –

+0

hi .. kann ich wissen, wie bekomme ich oauth_signature? .. danke – pcs

0

Was Eclipsed4utoo sagte - obwohl, wenn Sie immer noch den Fehler bekommen, sollten Sie überprüfen, ob Sie Ihre Anwendung registriert haben als Browser-basierte (und spezifiziert einen Rückruf) in den Twitter-Entwickler-Seiten.

Wenn es als Desktop-App aufgeführt ist, aber & oauth_callback in Aufrufen enthalten ist, wird der von Ihnen erwähnte Signaturvalidierungsfehler angezeigt.