【问题标题】:Permissions Error using API command to get Workitems for a Pull Request使用 API 命令获取拉取请求的工作项的权限错误
【发布时间】:2020-07-16 22:03:17
【问题描述】:

我正在尝试获取所有工作项,链接到存储库中的所有拉取请求。

首先,我运行 API 命令来获取所有拉取请求: https://dev.azure.com/{organization}/{project}/_apis/git/pullrequests?api-version=5.1

效果很好。

然后遍历每个拉取请求,我尝试获取所有工作项 https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/pullRequests/{pullRequestId}/workitems?api-version=5.1

即使我是管理员,我仍然会收到此错误: 内部异常 : 空值 信息 : TF401019: 名称或标识符为 {MY Repo ID} 的 Git 存储库不存在,或者您没有尝试执行操作的权限。 类型名称 : Microsoft.TeamFoundation.Git.Server.GitRepositoryNotFoundException,Microsoft.TeamFoundation.Git.Server 类型键 : GitRepositoryNotFoundException 错误代码 : 0 事件ID : 300

谁能帮我弄清楚如何为拉取请求获取这些相关工作项?

API 网页:
https://docs.microsoft.com/en-us/rest/api/azure/devops/git/pull%20requests?view=azure-devops-rest-5.1 https://docs.microsoft.com/en-us/rest/api/azure/devops/git/pull%20request%20work%20items/list?view=azure-devops-rest-5.1

【问题讨论】:

标签: git azure-devops pull-request workitem


【解决方案1】:

我知道出了什么问题。

当使用 API 调用获取给定拉取请求的工作项时,我使用的是从上一个命令返回的 RepoID 字段。 我必须使用 Repo 名称,而不是使用 RepoID 作为 New Command 中的 Repo ID 来获取工作项。

所以解决方案是使用这个: value.0.repository.name 而不是这个: value.0.repository.id 从第一次调用获取拉取请求。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2018-11-12
  • 1970-01-01
  • 1970-01-01
  • 2016-11-13
  • 2013-06-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多