【发布时间】:2021-11-04 01:02:13
【问题描述】:
我正在尝试创建一个 azure 逻辑应用程序。此逻辑应用应返回第一个响应并接受状态代码 202,将其发送回 id,然后处理剩余的工作流,然后返回 200 状态代码和最终响应。我是逻辑应用程序的新手。这可以在天蓝色的逻辑应用程序中实现,请指导。 谢谢。
【问题讨论】:
-
如果你使用http触发器,默认返回202,那么你可以使用REST连接器回调一个api。
我正在尝试创建一个 azure 逻辑应用程序。此逻辑应用应返回第一个响应并接受状态代码 202,将其发送回 id,然后处理剩余的工作流,然后返回 200 状态代码和最终响应。我是逻辑应用程序的新手。这可以在天蓝色的逻辑应用程序中实现,请指导。 谢谢。
【问题讨论】:
据我了解,您的逻辑应用有一个“收到 HTTP 请求时”触发器。
如果您添加“响应”操作并触发逻辑应用,它将同步运行并将您所谓的“最终响应”返回给调用者。
如果您在“响应”操作中启用Asynchronous Response 设置并再次触发逻辑应用,它将按您的预期工作:
Location 标头将包含一个 URL。Location 标头向 URL 发送 GET 请求时,它将返回 202(并且响应正文将显示逻辑应用仍在运行)或 200(如果这是您选择的状态代码在您的“响应”操作中)和最终响应,如预期的那样。【讨论】:
这就是逻辑应用通常的工作方式。与返回 ID 的整个逻辑应用不同,但返回值的是逻辑应用中的连接器,并且流程在逻辑应用内继续。
整个逻辑应用程序是一个工作流,它是根据我们的要求工作的连接器的集合
更多信息可以参考Azure Logic Apps documentation | Microsoft Docs和Introduction to Azure Logic Apps - Learn | Microsoft Docs。
【讨论】: