azure logic app撰写动作

时间:2018-04-01 16:06:25

标签: json azure azure-logic-apps

在Azure逻辑应用程序中,我正在撰写动作中创建一个Json主体。 JSON结构如下所示我将 place 属性值作为变量传递,即variables('result')

{
   "place": [
                {  "visit":"name"
                     },
               {    "visit":"name"
                     }
            ]
}

撰写操作中如何获取上述结构,因为我无法获得完整的数组结构。我尝试过很多东西,但结果如下:

{
       "place": "[
                    {  "visit":"name"
                         },
                   {    "visit":"name"
                         }
                ]"
 }

双引号会在compose动作中附加到变量中。如果我在撰写中作为数组传递意味着得到如下双引号则存在于数组的每个元素中。我不想在数组元素中使用双引号,我希望将值作为compose action属性中的变量:

{
           "place": [
                        "{  "visit":"name"
                             }",
                       "{    "visit":"name"
                             }"
                    ]
        }
 }

请让我知道热,以获得确切的结构。

1 个答案:

答案 0 :(得分:0)

我假设您的结果变量的类型为数组并包含以下值(您可以在运行历史记录中查看此内容):

[
    "{\"visit\":\"London\"}",
    "{\"visit\":\"Paris\"}"
]

请注意,我使用表达式创建了我的结果变量 - createArray('{"visit":"London"}','{"visit":"Paris"}')

您可以为结果变量添加对于每个作为输入。

对于每个中,您可以添加 Parse JSON 操作,该操作将当前项作为内容。您还需要提供数组对象的模式。

{ "type": "object", "properties": { "visit": { "type": "string" } } }

对于每个循环之外,您可以创建撰写操作。 撰写操作的代码视图如下所示。

{
    "inputs": {
        "place": "@actionBody('Parse_JSON')"
    }
}

此输出如下:

{
    "place": [
        {
            "visit": "London"
        },
        {
            "visit": "Paris"
        }
    ]
}