Mule 4如何将含JSON对象数组的字符串转为独立JSON并提取指定字段
解决Mule 4中JSON字符串数组的字段提取问题
问题分析
你的输入是一个JSON字符串数组,每个元素本身是序列化后的JSON字符串,而非直接的JSON对象。原代码未先解析这些字符串,导致无法正确提取目标字段。
正确的DataWeave代码
%dw 2.0 output application/json --- payload map (item) -> { PersonName: read(item, "application/json").Context[0].PersonName, PersonId: read(item, "application/json").Context[0].PersonId }
代码说明
payload map: 遍历输入数组中的每个元素read(item, "application/json"): 将每个字符串元素解析为JSON对象.Context[0]: 访问解析后对象中的Context数组,取出其中唯一的元素- 最终提取
PersonName和PersonId字段,组成新的对象数组
预期输出
执行后将得到如下格式的结果:
[ { "PersonName": "LANA, LANA", "PersonId": "30000020" }, { "PersonName": "Mary, Mary", "PersonId": "300000010" } ]
内容的提问来源于stack exchange,提问作者Elizabeth Goldy Antony
相关产品推荐
相关产品推荐

