2011-07-17 119 views
0

主要立竿见影率限制(这里解释>https://dev.twitter.com/docs/rate-limiting#feature-limiting),以调用服务最彻底的方法可能:在每次请求,也可以通过X-FeatureRateLimit-LimitX-FeatureRateLimit-RemainingX-FeatureRateLimit-Reset得到这些相关信息在响应头中发送。Twitter的API头红宝石

通过调用另一个端点(https://dev.twitter.com/docs/api/1/get/account/rate_limit_status)可以获取这些信息,但是在某些时候,似乎会占用您的配额,这使得它无关紧要。

我的问题是,不可能得到如何阅读这些特定的标题... 可能不那么难,但如果有任何人的帮助,谢谢。

回答

1

您可以使用twitter API wrapper处理HTTP头本身:

def initialize(message, http_headers) 
    @http_headers = Hash[http_headers] 
    super message 
end 

def ratelimit_reset 
    Time.at(@http_headers.values_at('x-ratelimit-reset', 'X-RateLimit-Reset').detect{|value| value}.to_i) 
end 

def ratelimit_limit 
    @http_headers.values_at('x-ratelimit-limit', 'X-RateLimit-Limit').detect{|value| value}.to_i 
end 

def ratelimit_remaining 
    @http_headers.values_at('x-ratelimit-remaining', 'X-RateLimit-Remaining').detect{|value| value}.to_i 
end