我无法打印出我在 Twitter 上关注的人的列表。这段代码在 250 处有效,但现在我关注了 320 个人,所以失败了。
失败描述:代码请求超过了twitter的速率限制。代码在限制重置所需的时间内休眠,然后重试。
我认为它的编写方式只是不断重试相同的整个可拒绝请求,而不是从中断的地方继续。
MAX_ATTEMPTS = 3
num_attempts = 0
begin
num_attempts += 1
@client.friends.each do |user|
puts "#{user.screen_name}"
end
rescue Twitter::Error::TooManyRequests => error
if num_attempts <= MAX_ATTEMPTS
sleep error.rate_limit.reset_in
retry
else
raise
end
end
谢谢!