Возникли проблемы при настройке простого однопользовательского скрипта Ruby для автоматизации работы с Oauth - PullRequest
2 голосов
/ 06 ноября 2010

Я пытаюсь создать несколько простых сценариев Ruby для запуска на локальном компьютере и автоматизировать некоторые функции Twitter только для моего собственного использования. У меня проблемы с получением разрешения OAuth.

Я зарегистрировал приложение на http://dev.twitter.com/apps и получил его ключ и секрет потребителя, а также получил токен доступа и секрет доступа для своей учетной записи Twitter из /my_token" rel="nofollow">http://dev.twitter.com/apps//my_token

Сброс до минимального кода:

require 'oauth'
TWITTER_CONSUMER_KEY = "my application's consumer key"
TWITTER_CONSUMER_SECRET = "my application's consumer secret"
TWITTER_ACCESS_TOKEN = 'my access token'
TWITTER_ACCESS_SECRET = 'my access secret'
consumer = OAuth::Consumer.new(TWITTER_CONSUMER_KEY, TWITTER_CONSUMER_SECRET,
  { :site => "http://api.twitter.com",
    :scheme => :header
  })
token_hash = { :oauth_token => TWITTER_ACCESS_TOKEN,
               :oauth_token_secret => TWITTER_ACCESS_SECRET
             }
access_token = OAuth::AccessToken.from_hash(consumer, token_hash )
response = access_token.request(:get, "http://api.twitter.com/1/friends/ids.json?user_id=Mashable")
puts response.body

Получает мне следующее каждый раз.

{"error": "Этот метод требует аутентификации.", "Request": "\ / 1 \ / friends \ /ids.json? User_id = Mashable"}

Похоже, что Twitter не распознает, что авторизация прошла. Я не могу понять, почему. Чего мне не хватает?

1 Ответ

0 голосов
/ 07 ноября 2010

Используете ли вы пин-код верификатора в вашем запросе? Большинство API OAuth требуют только верификатора для получения токена доступа. API Twitter использует верификатор для каждого запроса API.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...