Microsoft graph api 在节流时,等待时间未返回

Microsoft graph api 在节流时,等待时间未返回,microsoft-graph-api,onenote-api,Microsoft Graph Api,Onenote Api,我正在使用Microsoft Graph for OneNote。我发现这些端点存在一些问题。有时,当同时调用API时,会引发限制异常(HTTP429)。突然,下一个API调用返回成功响应 根据,当节流处于活动状态时,响应头中将返回一个Retry After字段以及HTTP 429,但我从未在响应头中收到此字段 有没有其他方法来获得等待时间 我应该等多久才能进一步避免这个问题?这对我来说是一个阻碍因素。请提供帮助。文档应该更清晰,并注意并非所有端点都返回重试后的。这是因为并非所有端点都使用相同的

我正在使用Microsoft Graph for OneNote。我发现这些端点存在一些问题。有时,当同时调用API时,会引发限制异常(
HTTP429
)。突然,下一个API调用返回成功响应

根据,当节流处于活动状态时,响应头中将返回一个
Retry After
字段以及
HTTP 429
,但我从未在响应头中收到此字段

有没有其他方法来获得等待时间


我应该等多久才能进一步避免这个问题?这对我来说是一个阻碍因素。请提供帮助。

文档应该更清晰,并注意并非所有端点都返回
重试后的
。这是因为并非所有端点都使用相同的规则

某些端点(如Exchange)基于查看窗口时间内请求数的公式进行节流。这些端点会以
之后重试来响应,以提醒您在有新窗口之前需要等待多长时间

其他端点只是根据并发请求的数量进行节流。OneNote是这些端点之一。它只是将最多5个并发调用限制在一个范围内,而不是查看一段时间内的请求。由于节流不依赖于时间,因此不可能在
值之后提供
重试

这也是为什么您经常看到首次重试成功的原因,这意味着以前的某个调用已完成,现在并发请求不到5个。


此博客文章包含有关如何避免从OneNote终结点进行限制(及其工作方式)的详细信息.

如果我在onenote页面中有很多附件和图像,并且我希望检索所有附件和图像,因此不建议并行处理它们?您当然可以并行处理,但希望将其限制为5个或更少的并发线程。在本博客中,我可以看到两件事1)限制将基于按应用程序和用户分类的请求数-这意味着,如果您的应用程序没有遵循我们的最佳做法,并且在短时间内向OneNote API发出过多请求,则可能会在一段时间内受到限制。2) 限制是针对每个应用程序和用户的。这对meit来说似乎有点混淆。这意味着,如果限制为每分钟X,则可以为特定用户发出每分钟X个请求,也可以为另一特定用户发出每分钟X个请求,但不是同一用户的2倍。是否知道每个用户的呼叫次数限制。