You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Jolt转换WebService响应为TeamCity参数插件所需结构

Jolt转换规则实现

输入JSON结构

{
  "software": [
    {
      "service": "someService",
      "versions": [
        "24.32.1.57-docker",
        "24.32.1.56-docker"
      ]
    }
  ]
}

目标JSON结构

{
  "options": [
    {
      "key": "24.32.1.57-docker",
      "value": "24.32.1.57-docker",
      "enabled": true,
      "default": "as default first entry in list"
    },
    {
      "key": "24.32.1.56-docker",
      "value": "24.32.1.56-docker",
      "enabled": true
    }
  ]
}

Jolt转换规则

[
  {
    "operation": "shift",
    "spec": {
      "software": {
        "*": {
          "versions": {
            "*": {
              "@": "options[&1].key",
              "@": "options[&1].value"
            }
          }
        }
      }
    }
  },
  {
    "operation": "default",
    "spec": {
      "options": {
        "*": {
          "enabled": true
        }
      }
    }
  },
  {
    "operation": "modify-overwrite-beta",
    "spec": {
      "options": {
        "0": {
          "default": "as default first entry in list"
        }
      }
    }
  }
]

规则说明

  • Shift操作:遍历software数组内的对象,提取versions数组的元素,分别映射到options数组对应位置的key和value字段,&1用于匹配当前数组索引来定位options的位置。
  • Default操作:给所有options对象统一添加enabled: true字段,保证每个选项都具备该属性。
  • Modify-overwrite-beta操作:针对options数组的第一个元素(索引为0),添加default字段并设置指定值,实现第一个条目作为默认项的需求。

内容的提问来源于stack exchange,提问作者Nikolay Marinov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 16:22:12