Autorización de Twitter de 3 patas en Ruby.

Estoy probando mi mano rubí sobre rieles. Sobre todo he escrito código en Sinatra. De todos modos esta pregunta puede no tener que hacer nada con el framework. Y esta pregunta puede sonar muy novicia. Estoy jugando con Twitter 1.1 APIs y OAuth por primera vez.

He creado una aplicación XYZ y la he registrado en Twitter. Obtuve la clave del consumidor de XYZ, es decir, CONSUMER_KEY y el secreto del consumidor, es decir, CONSUMER_SECRET. También obtuve el token de acceso propio de XYZ, es decir, ACCESS_TOKEN y el secreto de acceso, es decir, ACCESS_SECRET

Tipo de aplicación XYZ: lectura, escritura y acceso a mensajes directos URL de devolución de llamada XYZ:http://www.mysite.com/cback Y he comprobado: permitir que esta aplicación se utilice para iniciar sesión con Twitter

Lo que estoy tratando de hacer es muy simple:

1) Los usuarios vienen a mi sitio web y hacen clic en un enlace.Link your twitter account (no iniciar sesión con twitter)
2) Se abre la ventana emergente de Twitter donde el usuario otorga permiso a XYZ para realizar acciones en su nombre.
3) Una vez que el usuario lo permite y la ventana emergente se cierra, la aplicación XYZ obtiene el token de acceso y el secreto del usuario y los guarda en la base de datos.
4) Luego, XYZ usa el token y el secreto de ese usuario para realizar acciones en el futuro.

Es posible que se me dé cuenta de que dicho flujo de trabajo se ha implementado en varios miles de sitios y las documentaciones de la API de Twitter explican esta autenticación de tres patas, pero aún no puedo resolverlo.

he leídohttps://dev.twitter.com/docs/auth/3-legged-authorization yhttps://dev.twitter.com/docs/auth/implementing-sign-twitter Desafortunadamente, no se encontró ningún código Ruby en Internet que explique con el ejemplo paso a paso.

¿Qué enlace se debe utilizar para abrir la página de autenticación de Twitter cuando el usuario hace clic?Link your twitter account. ¿Puede alguien aquí, escribir algún pseudo código con mi credencial de pseduo arriba para lograr mi objetivo desde la mendicidad hasta el final de este flujo de trabajo? Gracias.

ACTUALIZAR:

Comencé solicitando token de solicitud como

require 'oauth'<br>consumer = OAuth::Consumer.new(CONSUMER_KEY, CONSUMER_SECRET,<br>{ site: "https://twitter.com"})<br>request_token = consumer.get_request_token oauth_callback: 'http://www.mysite.com/tauth'<br>redirect_to request_token.authorize_url

Respuestas a la pregunta(2)

Su respuesta a la pregunta