**Input**
{
"result": [
[
{
"ID": "12345",
"Name": "xyz",
},
{
"ID": "12345",
"Title": "abc",
}
]
]
"result": [
[
{
"ID": "67890",
"Name": "pqr",
}
]
]
}
输出
正在尝试从有效负载中的数组中获取数据。输出数据应为xml格式提前感谢
由于嵌套级别的原因,它有点复杂。我需要在末尾添加一个reduce((来从数组转换为对象。我还需要编辑输入,因为它不是一个有效的JSON。
输入:
{
"result": [
[
{
"ID": "12345",
"Name": "xyz"
},
{
"ID": "12345",
"Title": "abc"
}
]
],
"result": [
[
{
"ID": "67890",
"Name": "pqr"
}
]
]
}
脚本:
%dw 2.0
output application/xml
---
{
result:
payload.*result flatMap
$ flatMap
$ flatMap ((item, index) ->
{
root: {
ID: item.ID,
Name: item.Name default item.Title
}
}
) reduce ((item, accumulator) -> accumulator ++ item)
}
输出:
<?xml version='1.0' encoding='UTF-8'?>
<result>
<root>
<ID>12345</ID>
<Name>xyz</Name>
</root>
<root>
<ID>12345</ID>
<Name>abc</Name>
</root>
<root>
<ID>67890</ID>
<Name>pqr</Name>
</root>
</result>