如何编写Jolt规范将指定JSON节点字段提取为subscriberIds数组?
Jolt 转换实现方案
实现逻辑
按照需求需按顺序提取两个值存入subscriberIds数组:
- 取
origin节点下的accountId作为数组第一个元素 - 仅当
origin.group.type值为LE时,取origin.group.referenceId作为数组第二个元素
完整Jolt Specification
[ { "operation": "shift", "spec": { "origin": { "accountId": "subscriberIds[0]", "group": { "type": { "LE": { "@(2,referenceId)": "subscriberIds[1]" } } } } } } ]
转换效果验证
输入样例
{ "origin": { "site": "XXXXXX", "service": "XXXXXXXX", "accountId": "1001472060", "transactionId": "112477870", "group": { "type": "LE", "referenceId": "2141" } } }
输出结果
{ "subscriberIds": ["1001472060", "2141"] }
说明
- 若
origin.group.type的值不是LE,输出的subscriberIds数组仅会保留accountId一个元素,符合过滤规则 - 数组顺序严格遵循需求:
accountId在前,LE类型的referenceId在后
内容的提问来源于stack exchange,提问作者Babu Yadav
相关产品推荐
相关产品推荐

