Как получить request_token используя OAuth с твиттером - PullRequest
7 голосов
/ 02 марта 2010

Я использую следующий метод URI для запроса токена из твиттера.

Примечание: здесь новые строки только для отображения.

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

Но выдает ошибку «Не удалось проверить подпись и токен oauth».

Базовая строка, которую я использовал для компьютера подпись , как показано ниже:

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


Пожалуйста, поправьте меня, где я делаю ошибку.

Ответы [ 2 ]

4 голосов
/ 02 марта 2010

Ваша проблема с порядком параметров. Параметры для базовой строки должны быть в порядке. Если они вышли из строя, это выдаст вам эту ошибку.

Итак, ваша базовая строка должна быть такой ...

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

Обратите внимание, что ваш "nonce" был не в правильном месте.

Также, как правило, параметр «подпись» добавляется в конец URL-адреса запроса.

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

Приложение A.5.1

0 голосов
/ 18 сентября 2010

Что Eclipsed4utoo сказал - хотя, если вы все еще получаете ошибку, вы должны проверить, что вы зарегистрировали ваше приложение как основанное на браузере (и указали обратный вызов) на страницах администратора Twitter dev.

Если оно указано в качестве настольного приложения, но вы включили & oauth_callback в вызовах, вы увидите упомянутую вами ошибку проверки подписи.

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