2012-06-19 56 views
0

我正在构建一个使用Twitter Ruby gem来调用Twitter API的Rails应用程序。我已经自己授权了这个应用程序,所以我每小时的通话量超过了正常的150次(我想我得到了350次),但在生产中这还不够。除了缓存(已经这样做)并且要求用户自己登录以外,我还有哪些选择可以避免速率限制?Twitter的红宝石宝石速率限制

+1

让用户登录并拥有自己的费率限制。 –

回答

0

您需要获取用户的oauth_token和用户oauth_token_secret,然后你做代表他的请求(这样你就不会有限制)。

因此,假设你有令牌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,并且您将在它们进行身份验证后返回的哈希中看到令牌和秘密令牌。