Azure DevOps Rest API 不保持 System.AreaPath 和 System.IterationPath

Azure DevOps Rest API not keeping System.AreaPath and System.IterationPath

我正在尝试使用 Azure DevOps (TFS) Rest API 创建新的工作项。当我提交请求时,我发送的 json 数据具有 AreaPath 和 Iteration 路径的正确信息:

[
   {
      'op':'add',
      'path':'fields/System.Title',
      'from':null,
      'value':'Earthquake markers'
   },
   {
      'op':'add',
      'path':'fields/System.WorkItemType',
      'from':null,
      'value':'Task'
   },
   {
      'op':'add',
      'path':'fields/System.TeamProject',
      'from':null,
      'value':'UMC_Sitecore'
   },
   {
      'op':'add',
      'path':'fields/System.AreaPath',
      'from':null,
      'value':'UMC_Sitecore\Leaders'
   },
   {
      'op':'add',
      'path':'fields/System.IterationPath',
      'from':null,
      'value':'UMC_Sitecore Early Sept'
   },
   {
      'op':'add',
      'path':'fields/System.Tags',
      'from':null,
      'value':'Pre-Grooming'
   },
   {
      'op':'add',
      'path':'fields/System.Description',
      'from':null,
      'value':' test'
   }
]

然而,响应 json 默认为 AreaPath 和迭代路径的 TeamProject:

{
   {
      "System.WorkItemType":"Task",
      "System.AreaPath":"UMC_Sitecore",
      "System.TeamProject":"UMC_Sitecore",
      "System.IterationPath":"UMC_Sitecore",
      "System.State":"To Do",
      "System.Reason":"New task",
      "Microsoft.VSTS.Common.StateChangeDate":"1753-01-01T00:00:00Z",
      "System.ChangedBy":{
         "displayName":"Romero, Tim",
         "url":"https://code.umcom.org/UMCom_DefaultCollection/_apis/Identities/6d8a568d-3cf9-420b-9797-49b85b07b1f6",
         "_links":{
            "avatar":{
               "href":"https://code.umcom.org/UMCom_DefaultCollection/_apis/GraphProfile/MemberAvatars/win.Uy0xLTUtMjEtNjY3ODkyNjQ1LTgzMTIwMTE1Ni0yMDI1MzUwMDg3LTU5MDgw"
            }
         },
         "id":"6d8a568d-3cf9-420b-9797-49b85b07b1f6",
         "uniqueName":"UMCOM_CENTRAL\tromero",
         "imageUrl":"https://code.umcom.org/UMCom_DefaultCollection/_api/_common/identityImage?id=6d8a568d-3cf9-420b-9797-49b85b07b1f6",
         "descriptor":"win.Uy0xLTUtMjEtNjY3ODkyNjQ1LTgzMTIwMTE1Ni0yMDI1MzUwMDg3LTU5MDgw"
      },
      "System.CreatedBy":{
         "displayName":"Romero, Tim",
         "url":"https://code.umcom.org/UMCom_DefaultCollection/_apis/Identities/6d8a568d-3cf9-420b-9797-49b85b07b1f6",
         "_links":{
            "avatar":{
               "href":"https://code.umcom.org/UMCom_DefaultCollection/_apis/GraphProfile/MemberAvatars/win.Uy0xLTUtMjEtNjY3ODkyNjQ1LTgzMTIwMTE1Ni0yMDI1MzUwMDg3LTU5MDgw"
            }
         },
         "id":"6d8a568d-3cf9-420b-9797-49b85b07b1f6",
         "uniqueName":"UMCOM_CENTRAL\tromero",
         "imageUrl":"https://code.umcom.org/UMCom_DefaultCollection/_api/_common/identityImage?id=6d8a568d-3cf9-420b-9797-49b85b07b1f6",
         "descriptor":"win.Uy0xLTUtMjEtNjY3ODkyNjQ1LTgzMTIwMTE1Ni0yMDI1MzUwMDg3LTU5MDgw"
      },
      "Microsoft.VSTS.Common.Priority":2
   },
   "_links":{
      "workItemType":{
         "href":"https://code.umcom.org/UMCom_DefaultCollection/5f12db4f-f69b-45ac-8d18-dcae5a3177ab/_apis/wit/workItemTypes/Task"
      },
      "fields":{
         "href":"https://code.umcom.org/UMCom_DefaultCollection/5f12db4f-f69b-45ac-8d18-dcae5a3177ab/_apis/wit/fields"
      }
   },
   "url":"https://code.umcom.org/UMCom_DefaultCollection/5f12db4f-f69b-45ac-8d18-dcae5a3177ab/_apis/wit/workItems"
}

我的 json 格式是否有问题或者 API 是否有问题需要处理?

尝试替换 AreaPathIterationPath 值:

  • 'value':'UMC_Sitecore\Leaders''value':'UMC_Sitecore\Leaders'
  • 'value':'UMC_Sitecore Early Sept''value':'UMC_Sitecore\49 Early Sept'

反斜杠是 JSON 中的保留字符,您不能简单地这样使用它。

同意 LJ 的观点。

此外,我建议您使用""而不是''。请参阅此 doc 了解更多详情。

框架版本如下所示:

[
 {
 "op": "add",
 "path": "/fields/System.Title",
 "from": null,
 "value": "Sample Bug"
 },
 {
 "op": "add",
 "path": "/fields/System.IterationPath",
 "from": null,
 "value": "test0002\test02"
 },
 {
 "op": "add",
 "path": "/fields/System.AreaPath",
 "from": null,
 "value": "test0002\testa"
 }
]

结果: