【问题标题】:Twitter Ruby Gem Too many requestsTwitter Ruby Gem 请求过多
【发布时间】:2013-01-15 09:18:38
【问题描述】:

我目前正在使用带有 rspec 和 Ruby on Rails(带有 twitter gem)的 TDD 来提取推文和趋势以进行分析。然而,我不断收到Twitter::Error::TooManyRequests 并且不得不坐在周围旋转拇指,直到我可以提出另一个请求。这是 Twitter 搜索 API 的限制还是我做错了什么?

现在我有一个简单的索引页面,它调用 Twitter.config 一次并使用 Twitter.trends 跟踪它一次。在此运行rspec spec 以生成一个索引页会导致前面提到的错误。我在这里错过了什么吗?我在任何地方(应用程序、框架或完整跟踪)都找不到大量 twitter 请求。

我还没有使用流 API,因为它只提供原始推文而不提供趋势信息。

【问题讨论】:

  • Twitter 确实有 API 限制,除非是集成测试,否则您的测试不应该触及他们的 API。您真的应该在功能测试中消除对 API 的调用。

标签: ruby-on-rails ruby twitter


【解决方案1】:

Twitter 对未经身份验证的请求的速率限制为 150 个,对经过身份验证的用户的请求为 250 个。 也许您可以想办法以块的形式收集数据,而不是不断调用。

【讨论】:

    【解决方案2】:

    您可能需要查看VCR gem,它可以记录 HTTP 交互,这样您就不会不断地访问外部服务。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-12-27
      • 2013-01-06
      • 1970-01-01
      • 2013-08-20
      • 2013-05-24
      • 2013-05-13
      • 2019-06-13
      • 1970-01-01
      相关资源
      最近更新 更多