我正在使用Microsoft Graph for OneNote。我观察到这些端点的问题很少。有时,当同时调用API时会抛出限制异常(HTTP 429
)。然后突然下一个API调用返回成功的响应。
根据redux-form,当限制处于活动状态时,响应标头中将返回Retry-After
字段以及HTTP 429
,但我从未在响应标头中收到此字段。
还有其他方法可以获得等待时间吗?
我应该等多久才能进一步避免这个问题?这对我来说是一个阻碍问题。请帮助。
答案 0 :(得分:1)
文档应该更清晰,并注意并非所有端点都返回Retry-After
。这是因为并非所有端点都使用相同的规则进行限制。
某些端点(如Exchange)根据查看窗口时间内请求数的公式进行限制。这些端点以Retry-After
响应,提醒您在有新窗口之前需要等待多长时间。
其他端点只根据并发请求的数量进行限制。 OneNote是这些端点之一。它不是随着时间的推移查看请求,而是简单地将您限制为最多5个并发呼叫。由于节流不依赖于时间,因此不可能提供Retry-After
值。
这也是为什么你经常看到你的初始重试成功的原因,这意味着之前的一些调用已经完成,现在有5个或更少的并发请求。
答案 1 :(得分:0)
此博客文章包含有关如何避免从OneNote端点进行限制(以及如何工作)的更多信息。