Azure-devops Rest api - 分页和速率限制

Sam*_*ion 6 azure-devops-rest-api

我正在尝试提取 Azure-Devops 实体数据(团队、项目、存储库、成员等)并在本地处理该数据,我找不到任何有关速率限制和分页的文档,有人有这方面的经验吗?

有一些关于成员 api 的分页文档:
https://learn.microsoft.com/en-us/rest/api/azure/devops/memberentitlementmanagement/members/get ?view=azure-devops-rest-6.0

但这是唯一的一个,我找不到任何 git 实体的任何文档,
例如:存储库。
https://learn.microsoft.com/en-us/rest/api/azure/devops/git/repositories/list?view=azure-devops-rest-6.0

如果有人能给我指出正确的文档,或者阐明这些主题,那就太好了。

谢谢。

Leo*_*SFT 4

\n

我找不到任何有关速率限制和分页的文档,有人有这方面的经验吗?

\n
\n

有一个关于服务限制和速率限制的文档,介绍了所有项目和组织都必须遵守的服务限制和速率限制。

\n

对于速率限制:

\n
\n

与许多软件即服务解决方案一样,Azure DevOps 服务使用多租户来降低成本并增强可扩展性和性能。这使得用户容易受到性能问题的影响,\n当其共享资源的其他用户的消耗量出现峰值时,\n甚至会出现中断。为了解决这些问题,Azure DevOps 服务限制了个人可以消耗的资源以及他们可以对某些命令发出的请求数量。当超过这些限制时,后续请求可能会被延迟或被阻止。

\n
\n

您可以参考速率限制文档了解详细信息

\n

对于分页,通常,REST API 将具有分页响应,而 ADO REST API 通常每个响应中每页的限制为 100 / 200(取决于哪个 API)。检索下一页信息的方法是引用响应标头x-ms-continuationtoken并将其用作下一个请求参数continuationToken

\n

但微软并没有很好地记录这一点 - 这应该在每个支持延续令牌的 API 调用中提到:

\n

构建 - 列表\xef\xbc\x9a

\n
GET https://dev.azure.com/{organization}/{project}/_apis/build/builds?definitions={definitions}&continuationToken={continuationToken}&maxBuildsPerDefinition={maxBuildsPerDefinition}&deletedFilter={deletedFilter}&queryOrder={queryOrder}&branchName={branchName}&buildIds={buildIds}&repositoryId={repositoryId}&repositoryType={repositoryType}&api-version=5.1\n
Run Code Online (Sandbox Code Playgroud)\n

如果我将上面的 REST API 与 一起使用$top=50,正如预期的那样,我会返回 50 和一个名为“ x-ms-continuationtoken”的标头,那么我们可以使用以下方式循环输出结果continuationtoken

\n

在此输入图像描述

\n

您可以检查这个类似的线程以获取更多详细信息。

\n