DataWeave中的动态键值对

Jar*_*her 5 mule dataweave

DataWeave不喜欢我正在尝试用它做什么,而且我不确定我做错了什么,或者它是否是DataWeave的限制是不可能的.

这是一个场景:我正在查询Salesforce并获得两个值:让我们称之为X和Y.

这是我想要的返回,[{X:Y}, {X2:Y2}, {X3:Y3}, ...]但是使用DataWeave似乎不可能获得像这样的键值对,相反,它似乎只能为脚本中的每个值专门设置Key,如下所示:[{Value_X: X, Value_Y: Y}, {Value_X: X2, Value_Y: Y2}, ...]

这是我当前的DataWeave脚本,但它给了我第二个结果:

%dw 1.0
%output application/java
---

payload map {
    Value_X: $.X,
    Value_Y: $.Y
}
Run Code Online (Sandbox Code Playgroud)

这是我希望工作的DataWeave脚本,但不是

%dw 1.0
%output application/java
---

payload map {
    $.X: $.Y
}
Run Code Online (Sandbox Code Playgroud)

小智 12

为了使您的Dataweave代码正常工作,您需要将要用作括号的键的变量括起来:

%dw 1.0
%output application/java
---

payload map {
    ($.X): $.Y
}
Run Code Online (Sandbox Code Playgroud)


小智 7

你能试试下图中的内容吗?

在此输入图像描述