[英]How to retrieve and update JSON value In LogicApp using 'For Each'
背景:我希望在我的文档中循环、检索和更新项目
我希望找到并循环遍历数组中的值,找到嵌套值,然后使用 LogicApps 更新它们。 我知道我走在正确的道路上,我只需要一点帮助。
1.这是文件。 我希望遍历 A(其中有很多记录)并检索所有类别。
"A":
[
{
"category": "1"
}
]
2.一旦我检索到类别,我希望循环遍历我找到的每个类别,然后更新它们的 id 和状态
"category":"1"
"box":
[
{
"id": "update"
"status": "update"
}
]
我的方法和我所做的:
我相信我必须在 A 上做一个“For Each”循环。 我只是不确定如何在我想要检索所有“类别”字段的 logicApp 中编写,然后是框字段中的字段。
然后,一旦我获得所有“类别”字段,我必须使用字符串更新此数组中的 id 和状态。
我想改变
"id": "update" to "id" : "number"
和改变
"status": "update" to "status": "linked"
我相信我必须:初始化、解析并执行 For 循环
我相信我必须:初始化、解析并执行一个“For Each”循环,但是我如何告诉逻辑应用我希望从嵌套的“A”中获取“类别”部分,然后一旦我有了“类别”部分然后更新其中的“id”和“status”的嵌套字段?
任何帮助都很棒
您有两个选项可以进行编辑。
首先是传统的逻辑应用方式:
使用一组工作变量和setProperty()
function 在 go 中更新值。 一个变量来保存您当前正在编辑的部分,一个数组来保存到目前为止所做的工作。 由于您正在使用嵌套的 arrays,因此您需要两组变量——一组用于“A”内的数组,一组用于“box”内的数组。 为了更新子属性,您只需嵌套setProperty()
调用: setProperty(<object>['<parent-property>'], '<parent-property>', setProperty(<object>['parentProperty'], '<child-property>', <value>))
。
如果你还没有,你可能想看看这篇文章,因为它有类似的前提,但结构更简单一些: Updating Json Array in LogicApp
第二种选择是使用内联代码操作
在您的情况下,我可能会 go 这条路线,因为所需的操作数量显着下降,使应用程序更易于阅读并降低成本。 只要您的数据不太大,您就可以在一个操作中完成所有编辑,只需 output 结果。 如果你想保留一些结构或者你有一个大的 object,你可以保留两者的元素——在你的“A”数组上使用循环,然后在 Javascript 中对迭代进行更改。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.