Твиттер 3-х сторонняя авторизация в Ruby

Я пробую свою руку рубин на рельсах. В основном я написал код на Синатре. В любом случае, этот вопрос может не иметь ничего общего с фреймворком. И этот вопрос может показаться очень начинающим вопросом. Я впервые играю с API-интерфейсами Twitter 1.1 и OAuth.

Я создал приложение XYZ и зарегистрировал его в Twitter. Я получил XYZ 'потребительский ключ, т. е. CONSUMER_KEY, и потребительский секрет, т. е. CONSUMER_SECRET. Я также получил XYZ 'собственный токен доступа, т.е. ACCESS_TOKEN, и секрет доступа, т. е. ACCESS_SECRET.

Тип приложения XYZ: чтение, запись и доступ к прямым сообщениям URL обратного вызова XYZ:http://www.mysite.com/cback И я проверил: разрешить использование этого приложения для входа в Twitter

То, что я пытаюсь сделать, очень просто:

1) Пользователи заходят на мой сайт и нажимают на ссылкуLink your twitter account (не входите в твиттер)

2) Откроется всплывающее окно в Твиттере, где пользователь дает разрешение XYZ на выполнение действий от его / ее имени.

3) Как только пользователь разрешит и всплывающее окно закроется, приложение XYZ получит пользователяДоступ к токену и секрету и сохранение в базе данных.

4) Тогда XYZ использует этого пользователяТокен и секрет выполнения действий в будущем.

Я могу быть идиотом, что такой рабочий процесс был реализован на нескольких тысячах сайтов, и в документации по API Twitter объясняется эта трехсторонняя аутентификация, но я все еще не могу понять это.

я прочиталhttps://dev.twitter.com/docs/auth/3-legged-authorization а такжеhttps://dev.twitter.com/docs/auth/implementing-sign-twitter К сожалению, в интернете не найден рубиновый код, который объясняет пошаговый пример.

По какой ссылке нужно открывать страницу аутентификации в твиттере, когда пользователь нажимаетLink your twitter account, Может ли кто-нибудь здесь написать какой-то псевдокод с моими псевдо-учетными данными выше, чтобы достичь своей цели от начала до конца этого рабочего процесса? Благодарю.

ОБНОВИТЬ:

Я начал с запроса токена запроса как

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

Ответы на вопрос(2)

Ваш ответ на вопрос