3

我不清楚 Twitter 速率限制“每个访问令牌/用户每小时 350 个请求”是什么意思。他们如何限制请求?在 1 个请求中我可以获得多少数据?

4

1 回答 1

5

速率限制基于请求,而不是您接收的数据量(例如字节)。考虑到这一点,您可以使用您正在调用的特定端点的可用参数来最大化请求。我会给你几个例子来解释我的意思:

  1. 一种方法是将计数(如果支持)设置为最高可用值。在 statuses/home_timeline 上,您最多可以计数 200。如果您现在不使用它,您将获得默认值 20,这意味着您(理论上)需要再执行 10 次查询才能获得相同的数量数据的。更多的查询意味着你吃光了速率限制。

  2. 再次使用 statuses/home_timeline,请注意您可以使用 since_id 和 max_id 对数据进行分页,如使用时间线中所述。本质上,您可以跟踪您已经请求的推文,这样您就可以通过仅获取最新的推文来节省请求。

  3. 速率限制在 15 分钟窗口内,因此您可以调整您的请求,以尽量减少在任何给定时间窗口内用完的机会。

  4. 使用和请求的组合,这会增加您的速率限制。

还有更多这样的优化可以帮助您节省请求限制,其中一些比其他优化更微妙。查看每个 API 的速率限制、研究参数并思考 API 的使用方式可以帮助您最大限度地减少速率限制的使用。

于 2013-09-26T05:00:27.830 回答