我们有一个应用程序,可使用Drive API管理Google云端硬盘文件和文件夹的共享权限。当我们的应用程序尝试更新某些文件或文件夹的共享设置时,我们会收到' 分享 RateLimitExceeded'错误:
Caused by: com.google.api.server.spi.response.UnauthorizedException: 403 FORBIDDEN { "code" : 403, "errors" : [ {
"domain" : "global",
"message" : "Rate limit exceeded. User message: \"These item(s) could not be shared because a rate limit was exceeded: SupportMenuItem.class\"",
"reason" : "sharingRateLimitExceeded" } ], "message" : "Rate limit exceeded. User message: \"These item(s) could not be shared because a rate limit was exceeded: FILENAME\"" }
我们已将API调用配置为不发送电子邮件,我们的服务帐户在更改权限时模拟不同的用户以避免超出速率限制。
我们如何找出超出哪个共享限制?一旦我们知道超出了哪个共享限制,我们在哪里可以找到共享限制有多高?是每分钟共享限制还是每天共享限制?我们需要有关错误的更多信息,以便我们可以调整脚本,以便不再超出共享限制。 documentation中有关错误的信息仅限于对我们有任何价值。
答案 0 :(得分:2)
{ "code" : 403, "errors" : [ {
"domain" : "global",
"message" : "Rate limit exceeded. User message: \"These item(s) could not be shared because a rate limit was exceeded: SupportMenuItem.class\"",
"reason" : "sharingRateLimitExceeded" } ], "message" : "Rate limit exceeded. User message: \"These item(s) could not be shared because a rate limit was exceeded: FILENAME\"" }
您可以在一天内插入的权限数量有限制。那个24小时左右的时间大约是50,你似乎达到了这个配额。它应该在美国西部时间晚上重置。
据我所知,没有办法延长这个配额。
403:超出分享率限制
用户已达到共享限制。这通常与电子邮件限制相关联。
{
"error": {
"errors": [
{
"domain": "global",
"message": "Rate limit exceeded. User message: \"These item(s) could not be shared because a rate limit was exceeded: filename",
"reason": "sharingRateLimitExceeded",
}
],
"code": 403,
"message": "Rate Limit Exceeded"
}
}
建议采取的行动:
共享大量文件时不要发送电子邮件。 如果一个用户代表G Suite域的许多用户提出了大量请求,请考虑使用具有权限委派的Service Account来模拟要共享的每个文档的所有者(设置quotaUser parameter)。< / p>