0

我正在尝试使用逻辑应用程序执行 json -> json 转换。下面是逻辑应用代码。转换没有按预期工作。不知道是什么问题。我已经在在线液体沙箱中测试了模板,我没有发现任何问题。

 {
    "definition": {
        "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
        "actions": {
            "Response": {
                "inputs": {
                    "body": "@body('Transform_JSON_to_JSON')",
                    "statusCode": 200
                },
                "kind": "Http",
                "runAfter": {
                    "Transform_JSON_to_JSON": [
                        "Succeeded"
                    ]
                },
                "type": "Response"
            },
            "Transform_JSON_to_JSON": {
                "inputs": {
                    "content": "@triggerBody()",
                    "integrationAccount": {
                        "map": {
                            "name": "lqd"
                        }
                    }
                },
                "kind": "JsonToJson",
                "runAfter": {},
                "type": "Liquid"
            }
        },
        "contentVersion": "1.0.0.0",
        "outputs": {},
        "parameters": {},
        "triggers": {
            "manual": {
                "inputs": {
                    "schema": {}
                },
                "kind": "Http",
                "type": "Request"
            }
        }
    }
}

模板:

{
"name" : "{{firstName}} {{lastName}}"
}

输入:

{
 "firstName": "Jack",
 "LastName": "Jill" 
}

预期输出:

{
"name" : "Jack Jill"
}

Logic App 的实际输出:

{
  "name": " "
}
4

3 回答 3

0

Liquid 转换是 JSON 转换的高级版本。它应该用于复杂的 JSON 场景。如果您有简单的 JSON,则应使用 Compose 或 Parse JSON。

原因:当数据字符串有特殊字符双引号时,液体转换失败。因此,为避免操作转换失败,请使用 Compose 或 Parse JSON。

于 2020-03-06T09:13:26.170 回答
0

这适用于以下模板

{
"name" : "{{content.firstName}} {{content.lastName}}"
}
于 2019-10-15T12:12:47.810 回答
0

只是添加安居的回复:

有一种非常简单的方法Azure Logic App - Liquid Map中的双引号问题可以解决双 qoutes 的问题:

"quotedText":'{{ fieldThatContainsDoubleQuotes }}'
于 2021-12-28T09:56:27.717 回答