【问题标题】:Twitter ruby gem rate limitingTwitter ruby gem 速率限制
【发布时间】:2012-06-19 20:00:21
【问题描述】:
我正在构建一个使用 Twitter Ruby gem 调用 Twitter API 的 rails 应用程序。我自己授权了这个应用程序,所以我每小时接到的电话超过了正常的 150 个(我想我会接到 350 个),但在生产中这可能还不够。除了缓存(已经在做)和要求用户自己登录之外,我还有哪些选择可以避免速率限制?
【问题讨论】:
标签:
ruby-on-rails
ruby
twitter
【解决方案1】:
你需要得到用户oauth_token和用户oauth_token_secret,然后你代表他做请求(所以你没有限制)。
因此,假设您拥有 token 和 secret_token,您可以这样做:
@client_twitter = Twitter::Client.new(
:oauth_token => token,
:oauth_token_secret => secret_token
)
然后用那个@client_twitter 做请求。例如:
@client_twitter.profile_image(uid)
所以,您可能会问:如何获得 oauth_token 和 oauth_token_secret?他们需要授予您的应用程序执行此操作的权限。您可以使用OmniAuth,您将在经过身份验证后返回的哈希中看到令牌和秘密令牌。