{
"metadata": {
"id": "2",
"uri": "3",
"type": "2"
},
"Number": "2323600002913",
"Date": "04/21/2009",
"postingDate": "00/00/0000",
"ata": {
"results": [
{
"metadata": {
"id": "r",
"uri": "e2",
"type": "s2"
},
"item": "000010",
"data":"ad"
}
]
}
}
想要从上面的json消息中删除metadata
属性,并且输出应类似于下面的
{
"Number": "2323600002913",
"Date": "04/21/2009",
"postingDate": "00/00/0000",
"ata": {
"results": [
{
"item": "000010",
"data":"ad"
}
]
}
}
我尝试了removeProperty()
,它在根级别metadata
上有效,但是在metadata
内部没有删除。
在这种情况下如何使用replace()或仅删除metadata
的任何其他方法。
答案 0 :(得分:2)
最简单的方法是使用内联代码,即使使用removeProperty()
表达式删除结果下的元数据,它也会返回结果数组数据而不是整个json数据。然后,您必须将它们结合起来,这不是一种方便的方法。
使用内联代码,您可以参考下面的图片。变量json
是triggerbody的值,然后只需删除节点或键并返回json变量即可。这样,即使您想删除数组中的许多元数据,也可以添加for循环将其删除,只需将其视为纯js代码即可。
更新:如果您想从变量中获取价值,请使用以下表达式,因为没有支持表达式可以从变量中获取价值。
var json =wworkflowContext.actions.Initialize_variable.inputs.variables[0].value;
有关如何在json中循环数组的信息,请参见下面的图片。