向对象逻辑应用程序添加额外属性

问题描述 投票:0回答:2

我正在尝试向逻辑应用程序中的响应对象添加一个额外的属性。 我得到了 2 个形状,将请求发送到两个不同的 http。 在第三种形状中,我想将一个响应的主体与其他响应合并。 就像下面这样

"ResponsBody":{
  "title": "",
  "created": "",
  "priority": "",
  "Category": "",
  "summary": ""
}

所以我想从其中一个响应中获取 ID 并将其与另一个响应合并。

{
  "ID":""
  "title": "",
  "created": "",
  "priority": "",
  "Category": "",
  "summary": ""
}

到目前为止,这就是我得到的。

23123{"title": "","created": "","priority": "","Category": "","summary":""}
身份证在外面。

逻辑应用程序中的代码: "body": "@{triggerBody()?['ID']}@{body('Get_HTTP_Info')?['data']}"

azure-logic-apps
2个回答
8
投票

您可以使用@union函数来合并两个对象

"body": "@union(triggerBody(), body('Get_HTTP_Info'))"

要仅添加特定属性,您可以首先使用撰写操作来准备内容

"compose1": {
  "type": "compose"
  "inputs": { "id": "@triggerBody()['Id']"}
}

然后你就可以做

"body": "@union(outputs('compose1'), body('Get_HTTP_Info'))"

0
投票

以防其他人来到这里。现在存在更好的解决方案。

有关 JSON 和 XML 函数列表的 Microsoft 文档 - 此处

addProperty - 将属性及其值或名称-值对添加到 JSON 对象,并返回更新后的对象。

coalesce - 从一个或多个参数返回第一个非空值。

removeProperty - 从 JSON 对象中删除属性并返回更新后的对象。

setProperty - 设置 JSON 对象的属性值并返回 更新的对象。

xpath - 检查 XML 中与 XPath(XML 路径语言)表达式匹配的节点或值,并返回匹配的节点或值。

© www.soinside.com 2019 - 2024. All rights reserved.