仅针对域中的一个用户返回超出用户速率限制,而其他用户工作正常

User-rate limit exceeded returned for only one user in domain while others work fine

我正在使用 Gmail API 将邮件提取到数据库中。

昨天我在测试东西,短时间内发送了太多请求,我可能已经被列入黑名单了。

当我想从特定用户那里获取邮件时,出现以下错误。但是,如果我 运行 为域中的任何其他用户使用相同的脚本,就不会有问题。

令我困扰的是,错误第一行中的 Retry after DATE 每次我重试时都会不断增加。

我应该再等等还是有什么办法可以解决这个问题?

我正在使用 OAUTH JWT 域范围 [委托] 授权。

{ Error: User-rate limit exceeded.  Retry after 2017-02-02T13:15:27.785Z
    at Request._callback (/var/www/apps/gmail-api/node_modules/googleapis/node_modules/google-auth-library/lib/transporters.js:85:15)
    at Request.self.callback (/var/www/apps/gmail-api/node_modules/googleapis/node_modules/google-auth-library/node_modules/request/request.js:187:22)
    at emitTwo (events.js:106:13)
    at Request.emit (events.js:191:7)
    at Request.<anonymous> (/var/www/apps/gmail-api/node_modules/googleapis/node_modules/google-auth-library/node_modules/request/request.js:1044:10)
    at emitOne (events.js:96:13)
    at Request.emit (events.js:188:7)
    at IncomingMessage.<anonymous> (/var/www/apps/gmail-api/node_modules/googleapis/node_modules/google-auth-library/node_modules/request/request.js:965:12)
    at emitNone (events.js:91:20)
    at IncomingMessage.emit (events.js:185:7)
  code: 429,
  errors: 
   [ { domain: 'usageLimits',
       reason: 'rateLimitExceeded',
       message: 'User-rate limit exceeded.  Retry after 2017-02-02T13:15:27.785Z' } ] }

请注意,配额远未超出。

When testing gmail make sure that you are testing with a throw away gmail account if you spam to much you can get shut down and you don't want to shut down your developer account.

根据您达到的配额,有时更改用户可以让您绕过它。这是因为一些配额是基于用户/帐户的,而其他配额是基于项目的。我有三四个用于测试的帐户,因此您向每个帐户发送一些请求可以防止您被列入黑名单。

除此之外,您通常会在 midnight West cost USA time 之前被阻止。之前没看到他们报的一定是新东西。