2010-03-02 23 views
7

Estoy usando el siguiente URI de método para solicitar token de twitter.Cómo obtener request_token usando OAuth con twitter

Nota: aquí las nuevas líneas son solo para fines de visualización.

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 

Pero da el error "No se pudo validar la firma o el token".

La cadena de base Solía ​​equipo firma es como bramido:

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 


Corrija conmigo donde estoy haciendo error.

+0

si ha hecho con el inicio de sesión de twitter, por favor proporcione su ejemplo de trabajo en github o plunker –

Respuesta

4

Su problema es con el orden de los parámetros. Los parámetros para la cadena base deben estar en orden. Si están fuera de servicio, le dará ese error.

Así la cadena de base debe ser esto ...

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 

cuenta de que su "nonce" no estaba en el lugar correcto.

Además, normalmente, el parámetro "firma" se agrega al final de la URL de solicitud.

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

Apéndice A.5.1

+0

Todavía recibo el mismo error 'No se pudo validar la firma o el token' – Amit

+0

Creo que el parámetro 'oauth_callback' también debería estar en el orden correcto Además, cuando me refiero al orden correcto, estos deben estar en orden al crear la firma. Si todavía tiene problemas, edite su publicación y agregue su cadena base NUEVA para que podamos ver de qué se trata. –

+0

hola ... ¿puedo saber, cómo puedo obtener oauth_signature? ... gracias – pcs

0

Lo dijo Eclipsed4utoo - aunque si usted todavía está recibiendo el error debe comprobar que se haya registrado su solicitud como basada navegador (y ha especificado una devolución de llamada) en las páginas de administrador de desarrolladores de Twitter.

Si aparece como una aplicación de escritorio pero incluye & oauth_callback en las llamadas, verá el error de validación de la firma que menciona.

Cuestiones relacionadas