我的脚本因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天工作时仍然不清楚。
答案 0 :(得分:1)
根据twitter documentation,标准帐户的限制是每个费率限制窗口15个请求,即15分钟。因此,如果您在15分钟内发送22个请求,则超出限制。
标准API的速率限制主要基于每个用户 - 或者更准确地描述每个用户访问令牌。如果一个方法 每个速率限制窗口允许15个请求,然后允许15个 每个访问令牌的每个窗口请求。
使用仅应用程序身份验证时,确定速率限制 全局用于整个应用程序。如果方法允许15 请求每个速率限制窗口,然后它允许您发出15个请求 每个窗口 - 代表您的应用程序。考虑此限制 完全独立于每个用户的限制。
如果您希望提高结算限额premium APIs
答案 1 :(得分: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选项比其他选项更受限制。