Twitter API - POST收藏夹/创建特定速率限制

问题描述 投票:1回答:2

我遇到了一个问题,我的脚本崩溃了message undefined错误,这里得到了回答:TypeError: Cannot read property 'message' of undefined - Twitter API

事实证明,当达到速率限制时,错误消息以不同方式传递,因此console.log('Try Favorite - ', err[0].message);将返回错误,除非更改为console.log('Try Favorite - ', err.message);

它现在作为[[Apr 28 22:26:01.024]] [LOG] Try Favorite - HTTP Error: 429 Too Many Requests输出,表明速率限制,但是,我没有找到明确的速率限制。

POST限制的所有文档状态为1000,但是,我在lat 8小时的过程中总共计算了22个,所以奇怪的是它的速率有限。

有没有人有更清晰的文件?我发现的所有链接似乎已经死了。

我也可以补充说,只有收藏夹受到影响,所有其他请求都正常。

编辑:添加最近的输出。 Undefined将是You already ____ed this tweet,但是,由于临时更改以防止应用程序崩溃,消息未定义。

[[Apr 28 23:57:00.560]] [LOG]   Try Favorite -  HTTP Error: 429 Too Many Requests
[[Apr 28 23:57:00.562]] [LOG]   Try Favorite -  HTTP Error: 429 Too Many Requests
[[Apr 28 23:57:00.563]] [LOG]   Try Favorite -  HTTP Error: 429 Too Many Requests
[[Apr 28 23:57:00.564]] [LOG]   Try Favorite -  HTTP Error: 429 Too Many Requests
[[Apr 28 23:57:00.575]] [LOG]   Try Favorite -  HTTP Error: 429 Too Many Requests
[[Apr 28 23:57:00.578]] [LOG]   Try Retweet -  undefined
[[Apr 28 23:57:00.583]] [LOG]   Try Favorite -  HTTP Error: 429 Too Many Requests
[[Apr 28 23:57:00.584]] [LOG]   Try Retweet -  undefined
[[Apr 28 23:57:00.589]] [LOG]   Try Favorite -  HTTP Error: 429 Too Many Requests
[[Apr 28 23:57:00.592]] [LOG]   Try Retweet -  undefined
[[Apr 28 23:57:00.593]] [LOG]   Try Retweet -  undefined
[[Apr 28 23:57:00.599]] [LOG]   Try Retweet -  undefined
[[Apr 28 23:57:00.604]] [LOG]   Try Retweet -  undefined
[[Apr 28 23:57:00.609]] [LOG]   Try Retweet -  undefined
[[Apr 28 23:57:00.619]] [LOG]   Retweeted: https://twitter.com/username/status/90374******24768
[[Apr 28 23:57:00.634]] [LOG]   Try Retweet -  undefined
[[Apr 28 23:57:00.671]] [LOG]   Try Retweet -  undefined
[[Apr 28 23:57:00.754]] [LOG]   Try Favorite -  HTTP Error: 429 Too Many Requests
[[Apr 28 23:57:00.800]] [LOG]   Favorited:  https://twitter.com/username/status/99037*******48615

编辑:知道我明显超过了速率限制,但是这个问题今天只在工作5天之前出现了。转发仍然返回You have already retweeted this tweet,而收藏家返回状态429。

编辑:尝试另一个只有状态/转推请求的测试用户,经历了罚款。尝试使用不同的测试用户(以避免上次测试使用)收藏夹/创建并运行第一个间隔,然后在第2个请求后立即对每2分钟5个请求进行速率限制,这意味着我被限制在7个收藏夹/创建每4分钟一次。

这让我相信收藏夹有一个特定的限制,但是,当这个确切的间隔在5天之前工作时仍然不清楚。

javascript node.js rest twitter rate
2个回答
1
投票

根据twitter documentation,标准账户的限制是每个速率限制窗口15个请求,即15分钟。因此,如果您在不到15分钟内发送22个请求,则超出限制。

标准API的速率限制主要基于每个用户 - 或者更准确地描述每个用户访问令牌。如果某个方法允许每个速率限制窗口有15个请求,则每个访问令牌每个窗口允许15个请求。

使用仅应用程序身份验证时,将为整个应用程序全局确定速率限制。如果某个方法允许每个速率限制窗口有15个请求,那么它允许您为每个窗口发出15个请求 - 代表您的应用程序。此限制与每个用户限制完全分开考虑。

如果你想增加你的限额结帐premium APIs


0
投票

似乎没有任何记录的收藏夹/创建特定限制,但是,今天似乎一切都好。由于没有在Twitter System Status页面上发布更新,所以发生了什么并不完全清楚。

POST帐户的当前技术限制是:

  • 直接消息(每日):限制为每天发送1,000条消息。推文:每天2,400。每日更新限制进一步细分为半小时间隔的较小限制。转推被视为推文。帐户电子邮件的更改:每小时4次。
  • 以下(每日):技术跟踪限制为每天1,000。请注意,这只是技术帐户限制,并且还有其他规则禁止侵略性跟踪行为。阅读以下限制和禁止的行为。
  • 关注(基于帐户):一旦帐户关注5,000个其他帐户,其他关注尝试将受特定帐户比率的限制。这些限制包括来自所有设备的操作,包括网络,移动设备,电话,API等。来自所有第三方应用程序的API请求将根据每小时API限制进行跟踪。因此,使用其帐户使用多个第三方应用程序的用户将更快地达到API限制。

在大量使用场合期间,这些限制可能会暂时降低。在这种情况下,我们将在Twitter状态站点上发布更新。

话虽如此,似乎当时限制减少但未报告。

同样,请参阅Marco上面的答案,了解有关Premium API的有用信息。

GET速率限制也可以在here找到,并且有点扩展,但是文档没有说明个别POST选项比其他选项更受限制。

© www.soinside.com 2019 - 2024. All rights reserved.