OAuth через HTTP с Twitter - PullRequest
       9

OAuth через HTTP с Twitter

0 голосов
/ 04 января 2012

Я использую Tweepy для вызовов OAuth и Twitter API. По целому ряду причин я переключаюсь на urllib и выполняю HTTP-запросы напрямую.

Похоже, есть два варианта:

  • Я могу сделать oAuth напрямую через HTTP, но существующие ресурсы, похоже, либо говорят «не беспокойтесь, просто используйте библиотеку», либо они не покрывают половину процесса.
  • Я могу продолжать использовать Tweepy для получения пары ключ / секрет, но оттуда я до сих пор не знаю, как использовать эту пару для аутентификации моих запросов. В частности, что мне нужно сделать перед "https://api.twitter.com/1/statuses/home_timeline.json" для аутентификации, если предположить, что я уже завершил процесс OAuth и у меня есть ключ / секрет для пользователя, которого я хочу.

1 Ответ

2 голосов
/ 04 января 2012

Почему бы вам не использовать более общую библиотеку oauth (например, oauth2) вместо того, чтобы полностью выбросить идею библиотеки аутентификации oauth?

https://github.com/simplegeo/python-oauth2

Подписание запроса на OAuthозначает либо реализацию функции подписи самостоятельно для каждого запроса, либо использование существующей библиотеки, а создание подписей oauth довольно сложно и может привести к поломке.Как человек, который пару лет поддерживал API на основе OAuth, я настоятельно рекомендую вам использовать библиотеку.

В библиотеке oauth2 есть пример получения токена / секрета для твиттера.

Как только вы получите токен и секрет, библиотека oauth так же просто, как:

consumer = oauth.Consumer(consumer_key, consumer_secret)
token = oauth.Token(token,secret)
client = oauth.Client(consumer,token)
response = make_request(client,"https://api.twitter.com/1/statuses/home_timeline.json")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...