【问题标题】:How to get team avtar from DevOps api如何从 DevOps api 获取团队头像
【发布时间】:2020-08-21 17:02:07
【问题描述】:

我尝试使用 DevOps API 获取团队详细信息,我可以获取它但无法获取团队 Avtar/image,作为响应,只有文本信息,没有可用的描述符

我正在使用这种方式来获取它.. https://docs.microsoft.com/en-us/rest/api/azure/devops/core/teams/get?view=azure-devops-rest-6.0

你能指导我如何获得团队头像/图像吗???

【问题讨论】:

  • 我的回答对你有用吗?您需要其他帮助吗?

标签: azure azure-devops azure-devops-rest-api


【解决方案1】:

使用 Azure DevOps API Graph 中的主题查询

参考:https://docs.microsoft.com/en-us/rest/api/azure/devops/graph/subject%20query/query?view=azure-devops-rest-6.0

这样定义主体:

{
    "query": "Your Group Name",
    "subjectKind": [ "Group" ]
}

描述符位于结果中每个项目的末尾。

然后在belov请求中使用它来获取头像

https://dev.azure.com/(Organization)/_apis/GraphProfile/MemberAvatars/(descriptor)

【讨论】:

  • 感谢您的回答,是否可以像团队头像一样获得项目头像?
【解决方案2】:

如何从 DevOps api 获取团队头像

在 Azure Devops 的安全性中,subjectDescriptor 是用户的SID。它在操作一些安全控制时用作标识。此参数可以唯一标识帐户和组织中的相同图表主题。

要获取它,只需使用以下API

GET https://vssps.dev.azure.com/{org name}/_apis/graph/users?api-version=5.1-preview.1

从它的响应体中可以得到对应用户的descriptor值。

接下来,您可以将对应的descriptor 值作为subjectDescriptor 传递给REST API Avatars - Get

GET https://vssps.dev.azure.com/{organization}/_apis/graph/Subjects/{subjectDescriptor}/avatars?api-version=6.0-preview.1

另外,上述REST API的返回结果是图片的内容,为了获取头像的图片,我们需要提供参数format=png

更新:

这个用于用户 avtar 的 api...我想获取项目 avtar

要获取项目的头像,我们需要获取项目的subjectDescriptor。我们可以使用 REST API:

https://dev.azure.com/{organization}/_apis/graph/descriptors/{Teams Id}?api-version=5.0-preview.1 

要获取Teams Id,我们可以使用Teams - Get All Teams

GET https://dev.azure.com/{organization}/_apis/teams?api-version=5.1-preview.1

然后获取团队项目描述符的 ID:

现在,我们可以得到项目的头像了:

【讨论】:

  • 这个 api 用于用户 avtar...我想获取项目 avtar
  • @Umang,知道了。我已经更新了答案,请检查它是否对您有帮助。
  • @Umang,这个问题有什么更新吗?你解决了这个问题吗?如果没有,请告诉我有关此问题的最新信息吗?
猜你喜欢
  • 2022-09-29
  • 1970-01-01
  • 2023-03-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-04
  • 2020-08-11
  • 2017-08-15
相关资源
最近更新 更多