【发布时间】:2020-11-18 07:52:28
【问题描述】:
我正在尝试使用 dataweave 过滤掉与变量匹配的值。
result = {
"drives": [{
"id": "0AEBByqXZ0xb4Uk9PVA",
"name": "QA-zz-SFJobs-Contacts"
}, {
"id": "0AC_FdkeL63mHUk9PVA",
"name": "QA"
}]
}
上面是我的有效载荷。
正在尝试下面的代码
%dw 2.0
output application/json
---
{
drives: payload.result.drives[0] filter ((item, index) -> item.name == "QA")
}
这给了我错误
错误:
您使用以下参数调用了函数“值选择器”: 1: 字符串 ("{"drives":[{"id":"0AEBByqXZ0xb4Uk9PVA","name":"QA-zz-SFJobs-Contact...) 2:名称(“驱动器”)
但它需要以下组合之一: (数组,名称) (数组,字符串) (日期,姓名) (日期时间,名称) (本地日期时间,名称) (本地时间,名称) (对象,名称) (对象,字符串) (期间,姓名) (时间、姓名)
5|驱动器:payload.result.drives[0] filter ((item, index) -> item.name == vars.folderName) ^^^^^^^^^^^^^^^^^^^^^ 痕迹: 在过滤器处(行:5,列:13) 在 main(第 5 行,第 38 列)”评估表达式:“%dw 2.0 输出应用程序/json
{ 驱动器:payload.result.drives[0] filter ((item, index) -> item.name == vars.folderName) }”。
预期输出:
{ "id": "0AC_FdkeL63mHUk9PVA", “名称”:“质量保证” }
我怎样才能做到这一点?
【问题讨论】:
-
假设这是您最初的问题:stackoverflow.com/questions/64784201/…,我已经在那里发布了答案。请检查是否有帮助
标签: filtering matching dataweave mule4