一尘不染

在task.json中使用Web API填充选择列表buildtask

json

我是第一次使用TFS / VSTS扩展程序开发人员。我当前的任务是构建一个简单的VSTS Build任务。

我们有一个包含产品信息的自制Web API,但是我被束缚在源代码绑定中。找到了有关使用终结点服务的信息,但未填充我的选择列表。

我到目前为止所拥有的:

杰森

"inputs": [
{
  "name": "APIURL",
  "type": "connectedService:Generic",
  "label": "API URL",
  "required": true,
  "GroupName": "WebAPIsettings",
  "helpMarkDown": ""
},
{
  "name": "List1",
  "type": "pickList",
  "label": "List1",
  "defaultValue": "",
  "required": true,
  "GroupName": "WebAPIsettings",
  "helpMarkDown": ""
},
{
  "name": "List2",
  "type": "pickList",
  "label": "List2",
  "defaultValue": "",
  "required": true,
  "GroupName": "WebAPIsettings",
  "helpMarkDown": ""
}]

,"sourceDefinitions": [
{
  "target": "List1",
  "endpoint": "/api/data/get",
  "selector": "jsonpath:$.[Code]",
  "authKey": "$(APIURL)"
},
{
  "target": "List2",
  "endpoint": "/api/data/get",
  "selector": "jsonpath:$.[ID]",
  "authKey": "$(APIURL)"
}]

我创建了一个指向API的通用端点(http://sample.api.local

选择端点后,不会同时填充list1和list2,所以我缺少了一些东西。

我已经使用http://jsonpath.com/ JSON测试数据测试了我的API json输出:

[{"Code":"0344","ID":"version1"},
{"Code":"0363","ID":"version2"},
{"Code":"0518","ID":"version3"},
{"Code":"0599","ID":"version4"}]

我想念什么?


阅读 269

收藏
2020-07-27

共1个答案

一尘不染

改用以下代码:

"selector": "jsonpath:$[*].ID"
2020-07-27