Twitter 的速率限制是多少?你能绕过它吗?

Twitter 的速率限制是一种工具,旨在控制其应用程序编程接口 (API) 的使用方式,以阻止滥用并提供对资源的公平访问。 它对用户或应用程序在特定时间段内可以提交的查询数量设置限制。

本文将阐明 Twitter 速率限制背后的基本原理以及程序员如何在其限制内成功操作。

了解 Twitter 速率限制 

Twitter 实施速率限制以保障其平台的性能和稳定性。 速率限制定义为一段时间(通常为 15 分钟)内每个 API 端点允许的最大请求数。 因此,如果端点的速率限制为每 900 分钟 15 个请求,则意味着您最多可以在任何 900 分钟间隔内发出 15 个请求。

根据您使用的身份验证方法,速率限制可能是 征收。 例如,如果您使用“OAuth 1.0a 用户上下文”,则每组用户在任何给定时间可以拥有的访问令牌总数都会受到限制。 相反,如果您使用“OAuth 2.0 Bearer Token”,您的应用程序将对其在分配时间内可能发出的请求数量有一个明显的上限。 如果超出这些限制,将返回错误。 请继续阅读以了解有关这些细节的更多信息,并获取有关如何避免速率限制的建议。

速率限制的类型

Twitter 使用两种不同的 类型 速率限制:用户令牌级别和广告帐户级别。 用户令牌是指用于身份验证和调用广告 API 的 OAuth 访问令牌。 每个用户令牌可以与一个或多个广告帐户关联。 但是,只有一组特定的端点被配置为利用广告帐户级别速率限制。

Twitter 的“超出速率限制”对用户意味着什么?

埃隆·马斯克最近宣布,Twitter 决定对用户每天可以阅读的帖子数量实施临时限制。 采取这一措施是为了响应对“极端水平的数据抓取和系统操纵”的观察。

由于此类限制,用户必须登录 Twitter 才能访问推文。 对于不同的账户类型,设置了不同的限额。 未经验证的帐户每天只能阅读 600 个帖子,而经过验证的帐户每天最多可以访问 6,000 个帖子。 全新、未经验证的帐户的每日限制要低得多:300 个帖子。 超过这些上限的用户将立即收到一条警告,提示“超出速率限制”。 

超过速率限制会导致临时限制,例如无法执行某些操作或检索数据。 用户需要等到速率限制重置后才能恢复在平台上的活动。 不过,马斯克也宣布,近期将提高限额。

相关:由于速率限制大幅削减,加密推特在谷歌上的曝光率将减少

速率限制策略

开发者可以通过多种方式在 Twitter 的速率限制下高效运营:

  • 缓存:实现缓存机制,以缓存经常访问的数据并减少重复请求的需要。
  • 批处理:将多个 API 调用合并为一个请求,以最大程度地减少单独请求的数量。
  • 请求优先级:确定最重要的 API 端点并相应地对查询进行排序。
  • 退避和重试:为了妥善处理超出速率限制的错误,请实施指数退避和重试技术。

速率限制状态和处理

Twitter 在 API 响应中包含有关速率限制处理的信息,使开发人员能够监控使用情况并采取适当的措施。 当达到速率限制时,API 答案包含与速率限制相关的标头,显示仍有多少请求处于打开状态以及限制何时重置。 开发人员应使用适当的错误处理工具来妥善管理超出速率限制的错误。

你能绕过 Twitter 的速率限制吗?

不,不可能绕过 Twitter 施加的速率限制。 速率限制由 Twitter 系统强制执行,以保持稳定性、防止滥用并确保平台的公平使用。 尝试绕过速率限制可能会导致临时限制或违反 Twitter 政策的其他后果。

遵守速率限制准则并在定义的限制内负责任地使用 Twitter API 非常重要。 为了确保成功且持久的开发过程,开发人员应该努力优化他们的代码,使用有效的策略并尊重 Twitter 的限制。

资料来源:https://cointelegraph.com/news/what-is-twitter-s-rate-limit