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

请求JOLT Transformation配置:实现指定JSON结构与数组格式转换

JOLT Transformation 配置方案

需求概述

  • 将输入JSON中的code字段重命名为status
  • 把data节点下的所有字段展开到根层级
  • 将空数组类型的FSequences转为空字符串
  • 将单元素数组类型的token转为字符串值

输入JSON

{
  "code": 200,
  "data": {
    "totalCount": 1,
    "SCount": 1,
    "FCount": 0,
    "FSequences": [],
    "token": [
      328358
    ]
  },
  "id": "ce27g26hvamob9lbd0eg"
}

当前使用的JOLT配置

[
  {
    "operation": "shift",
    "spec": {
      "data": {
        "*": "&"
      },
      "status|id": "&"
    }
  }
]

期望输出

{
  "totalCount" : 1,
  "SCount" : 1,
  "FCount" : 0,
  "FSequences" : "",
  "token" : "328358",
  "status" : 200,
  "id" : "ce27g26hvamob9lbd0eg"
}

符合需求的JOLT配置

[
  // 重命名code为status,展开data下的字段到根节点
  {
    "operation": "shift",
    "spec": {
      "code": "status",
      "data": {
        "*": "&"
      },
      "id": "&"
    }
  },
  // 将空数组FSequences转为空字符串
  {
    "operation": "modify-overwrite-beta",
    "spec": {
      "FSequences": ["=isEmpty(@)", "", "@"]
    }
  },
  // 将单元素数组token转为字符串值
  {
    "operation": "modify-overwrite-beta",
    "spec": {
      "token": ["=join('',@)", "@"]
    }
  }
]

配置说明

  1. shift操作:完成code到status的重命名,同时把data下所有字段提取到根节点,保留原有的id字段。
  2. 第一个modify-overwrite-beta操作:通过=isEmpty(@)判断FSequences是否为空数组,满足条件则替换为空字符串,否则保留原内容。
  3. 第二个modify-overwrite-beta操作:用=join('',@)将单元素数组拼接成字符串,数组内的数值会自动转换为字符串类型。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 03:25:29