Jolt转换中如何修改字段值并替换为自定义值(如将White替换为Black)
Jolt配置实现title字段值替换方案
以下配置可直接实现将response数组下所有元素的title字段值从White替换为Black的需求,其余字段保持原有值和结构不变:
[ { "operation": "modify-overwrite-beta", "spec": { "response": { "*": { "title": "=ifElse(equals(@(1,&),'White'),'Black',@(1,&))" } } } } ]
配置逻辑说明
- 采用modify-overwrite-beta操作实现字段值修改,该操作会在保留原有JSON结构的基础上,对指定路径的字段做覆盖更新
response.*通配符匹配response数组下的每一个对象元素- 针对每个对象下的
title字段做逻辑判断:- 当字段当前值等于
White时,将值替换为Black - 当字段值为其他内容时,保留原有值不做修改,避免误改非目标数据
- 当字段当前值等于
扩展用法
如果你后续需要批量替换多组固定值,可以将判断逻辑替换为映射写法,示例如下:
"title": "=map(@(1,&),{'White':'Black','Gray':'DarkGray','Other':'Default'})"
转换结果验证
使用你提供的输入JSON执行上述规则,输出结果完全符合预期:
{ "response": [ { "requestDate": 1655285978000, "title": "Black" }, { "requestDate": 1655193656000, "title": "Black" } ] }
内容的提问来源于stack exchange,提问作者Aditya
相关产品推荐
相关产品推荐

