azure - 获取每个用户的工作项字段的总统计信息
问题描述
最终目标——本质上,我通过 Azure DevOps 尝试做的是获取团队中每个开发人员完成的全部故事点(这是所有工作项的一个字段),然后获取该数据并将其与每个开发人员的跟踪时间进行比较使用 toggl API 的工作项。
问题- 我似乎找不到任何可以让我通过 Azure DevOps REST API 做到这一点的东西。我实际上找不到任何东西可以让我根据分配的人员等标准获得所有工作项目,然后我可以在剩下的路上携带它。我什至会拿走所有的工作项目,然后我必须自己做所有的过滤和分组。
我正在尝试通过https://github.com/microsoft/azure-devops-node-api使用节点执行此操作,但如果需要,我很乐意在没有客户端库的情况下执行此操作。
这里的任何帮助将不胜感激!
我尝试使用 Azure DevOps REST API 来获取所有工作项,但看不到这样做的方法。
解决方案
您可以使用Azure DevOps Rest API从查询中获取工作项,API 是Wiql - Query By Id:
GET https://dev.azure.com/{organization}/{project}/_apis/wit/wiql/{id}?api-version=5.0
为此,您需要查询 ID,因此创建一个返回分配给用户的项目的查询,保存查询,现在您可以在 url 中看到 id:
获得查询结果后,您可以使用Work Items - Get Work Item Api 迭代工作项并获取工作项详细信息(所有字段值):
GET https://dev.azure.com/{organization}/{project}/_apis/wit/workitems/{id}?api-version=5.0
它是 Rest API,因此您可以使用所需的语言(Java、C#、Node.js、PowerShell 等)进行操作。
PowerShell 的小例子:
$user = ""
$token = "YOUR-PAT-HERE"
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $user,$token)))
$url = "https://dev.azure.com/{organization}/{project}/_apis/wit/wiql/{queryId}?api-version=5.0"
$query = Invoke-RestMethod -Uri $url -Method Get -ContentType application/json -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)}
$query.workItems.ForEach({
$wiUrl = "https://dev.azure.com/{organization}/{project}/_apis/wit/workitems/$($_.id)?api-version=5.0"
$workItem = Invoke-RestMethod -Uri $wiUrl -Method Get -ContentType application/json -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)}
})
推荐阅读
- java - 多元化休息资源
- html - 有没有办法在 iframe 中查看网站的移动版本?
- javascript - 如何使用 Axios 对 application/x-www-form-urlencoded 中的 JSON 数据进行编码?
- c++ - 为什么我们需要在参数化构造函数中预先初始化参数?
- shiny - 替换闪亮的切换按钮
- angular - 角度路由错误:“路由激活期间未实例化路由器出口”
- c++ - 在 .cpp 文件中定义类是好的 C++ 吗?
- c++ - 如何以正确的格式获取 UTC 偏移量(时区)?
- python-3.x - msvcrt.kbhit() 总是返回 false 。无法检测到 Escape 键
- c# - Linq 查询返回列表中的项目,其中包含另一个列表