问题描述
我试图匹配有效负载中的特定值,并使用dataweave表达式仅返回匹配的数组值。
输入:
name: QA
有效载荷:
{
"kind": "drive#driveList","nextPagetoken": "~!!~AI9FV7TFuXfzyGg-txFqJWTa2odxcgJ3ULdaNmst8","drives": [
{
"kind": "drive#drive","id": "0AKrgo4Gdm2hzUk9PVA","name": "Dev"
},{
"kind": "drive#drive","id": "0AGymmOhxiCGwUk9PVA","name": "EHS Safety - Public"
},"id": "0AAD3jo6D8PX-Uk9PVA","name": "Job Master folder"
},"id": "0AI1WUfEk8cWkUk9PVA","name": "Mstemplates"
},"id": "0AC_FdkeL63mHUk9PVA","name": "QA"
}
]
}
{
"kind": "drive#drive","name": "QA"
}
我该如何实现?
解决方法
您可以使用以下数据编织表达式:
%dw 2.0
output application/json
---
payload.drives filter ((item,index) -> item.name == 'QA')
输出:
[
{
"kind": "drive#drive","id": "0AC_FdkeL63mHUk9PVA","name": "QA"
}
]
请注意,生成的有效负载将是“驱动器”项的数组。