26 Nov 2020
将要实现的一个用户场景是,在同一个Active Domain中,有2个不同的organization。 需要在这2个不同的organization之间创建远程链接关系。 例如,在一个org中更新Task任务项,当某种条件满足情况下需要在另一个不同的organization中创建一个特定work item type类型的work item。并且创建一个remote dependency链接关系。
Create a work item
功能在alt org中创建一个新work item.Send an Http request to Azure DevOps
创建两个work item之间的链接关系。
PATCH
方法。https://dev.azure.com/{org}/{project}/_apis/wit/workitems/{id}?api-version=6.0
Send an HTTP request to Azure DevOps
创建一个新work item,并且立即建立链接关系。
POST
方法。https://dev.azure.com/{org}/{project}/_apis/wit/workitems/${wit}?api-version=6.0&validateOnly=false&bypassRules=true
, 注意,work item type类型前使用$开始,否则报错page not found。Send an HTTP request to Azure DevOps
的使用记录如果使用Get
方法来获取一个Work Item的字段,包括链接关系等, 需要对返回的Response进行Json解析,用到Parse Json
。
使用Parse Json
需要2个输入,一个是要解析的文档内容,即Send an HTTP request to Azure DevOps
的ouput - Body
; 另一个是解析时参考的Schema, 这个Schema可以通过使用Postman来手动调用同一个Work item来获得一个Response, 从Response作为一个Sample产生Schema。
另外, 针对Work Item的操作,我们经常需要从一个Work Item访问到它的Parent Work Item, Get Work Item
返回的属性中有个Parent
字段即是Parent work item的Id
.
获取Work Item by Id
https://dev.azure.com/{organization}/_apis/wit/workitems/{id}?$expand=relations&api-version=5.0
在expand=relations的前提下,对获取的Work Item遍历relations, 对每一个relation关系,得到对应属性rel
和url
。