【问题标题】:Dynamically reference payload field names in Dataweave在 Dataweave 中动态引用有效负载字段名称
【发布时间】:2019-03-01 17:41:52
【问题描述】:

我正在使用 Anypoint Studio 7.3 和 Mule 4.1。

我希望在转换消息时从 JSON 有效负载动态传递字段名称,因此在第一次调用时我想使用“cat_name”字段中的值,当我第二次调用它时我想使用作为输出消息结构的“dog_name”字段中的值将是相同的。因此,对于“cat_name”,我希望将 $.(vars.codetest) 解析为 payload.cat_name,对于“dog_name”,我希望将 $.(vars.codetest) 解析为 payload.dog_name

有没有办法做到这一点?

%dw 2.0
output application/json
---
(payload distinctBy $.#[vars.codetest]) map ((payload01, indexOfPayload) ->{
    name: $.(vars.codetest)
})

感谢您的帮助

【问题讨论】:

    标签: mule anypoint-studio dataweave


    【解决方案1】:

    这样的事情应该可以工作:

    %dw 2.0
    output application/json
    ---
    payload 
      distinctBy $[vars.codetest]   
      map ((element) -> { name: element[vars.codetest] })
    

    您可能需要在 codeTest 周围使用括号(即(vars.codetest)),以便在查找之前对其进行评估。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-12
      相关资源
      最近更新 更多