如何通过Jolt转换去除JSON嵌套,将key:{value:值}转为key:值
Jolt转换方案:扁平化嵌套结构并移除
typedValues外层包裹 以下是实现需求的正确Jolt转换规则,可同时完成外层包裹移除与嵌套结构扁平化:
[ { "operation": "shift", "spec": { "*": { "typedValues": { "*": { "value": "&2" } } } } } ]
规则细节解释
- 最外层的
*:匹配输入数组中的每一个元素; typedValues:精准定位需要移除的外层包裹对象;- 内层的
*:匹配typedValues下的所有键(如示例中的key1、key2); "value": "&2":实现扁平化的核心逻辑,&2表示向上回溯两层的键名(当前value所在层级为第1层,其父级的key1/key2为第2层),将value字段的直接值赋值给对应的外层键,消除嵌套结构。
转换结果验证
将上述规则应用到你的输入JSON后,输出与期望完全一致:
[ { "key1": "abc", "key2": "xyz" }, { "key1": "123", "key2": "456" } ]
内容的提问来源于stack exchange,提问作者Benjamin Fach
相关产品推荐
相关产品推荐

