Azure 逻辑应用程序 - 验证 JSON 文件中的内容
Azure Logic Apps - Verify content in JSON file
我有一个逻辑应用 运行 如下:
- 第 1 步 = 重复(逻辑应用的时间表 运行)
- 步骤 2 = HTTP(对 returns 一个 JSON 文件的自定义 API 执行 POST 调用)
- 步骤 3 = 创建 Blob(从 步骤 2 上传所述文档并将其上传到 blob 存储)
我现在想做的是在第 2 步和第 3 步之间添加一个额外的步骤。进行 HTTP POST 调用后,我想验证返回的 JSON 文件中的内容。如果 JSON 文件中存在错误,我希望逻辑应用程序在那里停止。
是否有我可以在 Azure 的逻辑应用程序中使用的特定步骤来验证数据并让该步骤决定是否应该继续。
这个需求可以参考我下面的逻辑应用:
1. 我初始化一个名为“resultFromHTTP”的变量来模拟来自您的 HTTP 请求的 json(步骤 2 ).我删除了一些字符,因此“resultFromHTTP”不是有效的 json 格式。
2. 然后我初始化另一个变量并在其值中使用表达式 json(variables('resultFromHTTP'))
.
3. 运行 逻辑应用程序,它将失败并显示如下屏幕截图所示的错误消息。如果 json 格式有效,它将 运行 成功。
=================================更新=== ===========================
对于你最近的问题,如果 HTTP 请求的结果 json 不是有效的 json 格式并且不是很长的字符串,你可以这样做:
contains(...
表达式为contains(variables('resultFromHTTP'), 'Data Not Found')
。然后你可以在“if true”或“if false”下做你想做的事。
如果HTTP请求的结果json是合法的json格式,可以使用“Parse JSON”action解析得到指定的字段然后判断是否等于“未找到数据”。
我有一个逻辑应用 运行 如下:
- 第 1 步 = 重复(逻辑应用的时间表 运行)
- 步骤 2 = HTTP(对 returns 一个 JSON 文件的自定义 API 执行 POST 调用)
- 步骤 3 = 创建 Blob(从 步骤 2 上传所述文档并将其上传到 blob 存储)
我现在想做的是在第 2 步和第 3 步之间添加一个额外的步骤。进行 HTTP POST 调用后,我想验证返回的 JSON 文件中的内容。如果 JSON 文件中存在错误,我希望逻辑应用程序在那里停止。
是否有我可以在 Azure 的逻辑应用程序中使用的特定步骤来验证数据并让该步骤决定是否应该继续。
这个需求可以参考我下面的逻辑应用:
1. 我初始化一个名为“resultFromHTTP”的变量来模拟来自您的 HTTP 请求的 json(步骤 2 ).我删除了一些字符,因此“resultFromHTTP”不是有效的 json 格式。
2. 然后我初始化另一个变量并在其值中使用表达式 json(variables('resultFromHTTP'))
.
3. 运行 逻辑应用程序,它将失败并显示如下屏幕截图所示的错误消息。如果 json 格式有效,它将 运行 成功。
=================================更新=== ===========================
对于你最近的问题,如果 HTTP 请求的结果 json 不是有效的 json 格式并且不是很长的字符串,你可以这样做:
contains(...
表达式为contains(variables('resultFromHTTP'), 'Data Not Found')
。然后你可以在“if true”或“if false”下做你想做的事。
如果HTTP请求的结果json是合法的json格式,可以使用“Parse JSON”action解析得到指定的字段然后判断是否等于“未找到数据”。