mule - Mule-使用 dataweave 从 Json 对象中提取密钥
问题描述
我需要从 json 输入对象中提取键和值以形成不同的 json 输出。
我浏览了与此类似的文档和其他问题,我发现 $$ 提供了密钥,但在我的情况下,它给了我索引而不是密钥名称。
输入 json 如下所示:{
"key2": "val2",
"key3": "val3",
"key4": "val4",
"key5": "val5",
"key6": "val6"
}
我编写的数据编织代码是:
{
"someOtherKey": "val",
properties: {
entry: payload map
{
key:$$,
value:$
}
}
}
改造后我得到:
{
"someOtherKey": "val",
"properties": {
"entry": [
{
"key": 0,
"value": "val2"
},
{
"key": 1,
"value": "val3"
},
{
"key": 2,
"value": "val4"
},
{
"key": 3,
"value": "val5"
},
{
"key": 4,
"value": "val6"
}
]
}
}
在这里,我期望以键名作为键值的输出
预期输出:
{
"someOtherKey": "val",
"properties": {
"entry": [{
"key": "key2",
"value": "val2"
},
{
"key": "key3",
"value": "val3"
},
{
"key": "key4",
"value": "val4"
},
{
"key": "key5",
"value": "val5"
},
{
"key": "key6",
"value": "val6"
}
]
}
}
解决方案
标签采摘对我有用。这是示例:
{
"someOtherKey": "val",
properties: {
entry: payload pluck
{
key:$$,
value:$
}
}
}
推荐阅读
- html - 如何在容器外显示导航栏下拉菜单?
- mysql - MacOS Mojave 上的 WordPress 数据库连接错误
- webrtc - Edge WebRTC 加入了显示旧帧的媒体流
- javascript - 单击我的选择中的另一个项目时如何访问 json 对象的其他属性?
- python-3.x - How to plot multi-index, categorical data?
- css - 如何从我的标签中删除悬停效果?
- c - OpenCV无法识别网络摄像头,但mplayer成功
- algorithm - LZ77 和转义字符
- javascript - 返回并渲染 JSX
- python - 可以将 keras“flow_from_directory”与“.mat”文件一起使用吗?