Azure 逻辑应用程序:可空 JSON 值不可用作动态内容

Azure logic apps: Nullable JSON values not available as dynamic content

我正在构建一个逻辑应用程序,它从 REST API 中提取一些 JSON 数据,使用 Parse JSON 块对其进行解析,并将其推送到 Azure Log Analytics。我遇到的主要问题是一个重要的 JSON 字段可以是对象或空值。根据 post,我将 JSON 架构的相关部分更改为类似这样的内容

"entity": {"type": ["object", "null"] }

虽然这有效,但我现在不再稍后在逻辑应用中作为动态内容访问 entity。我可以访问逻辑下游的 Parse JSON 块解析的所有其他字段(没有可空字段)。如果我删除“null”选项并将类型设置为 object,我可以再次访问动态内容中的 entity。有谁知道为什么会这样 and/or 如何访问下游的 entity 字段?

通过测试,如果我们使用"entity": {"type": ["object", "null"] },确实不能在dynamic content.

中直接selectentity

但是我们可以用下面的表达式得到entity:

body('Parse_JSON')?['entity']

测试结果好像没问题:

为了更好的理解,再举几个例子:

1.如果你的json是这样的:

{
    "entity": {
        "testKey": "testValue"
    }
}

你的表情是这样的:

body('Parse_JSON')?['entity'] 

2.如果你的json是这样的:

{
    "test": {
        "entity": {
            "testKey": "testValue"
        }
    }
}

你的表情应该是这样的:

body('Parse_JSON')?['test']?['entity']