动态计划触发器 Azure 逻辑应用

Dynamic schedule trigger Azure Logic Apps

我正在为任务创建一个调度程序实现,其中某个 API 需要在任务本身指定的日期时间调用。我查看了 Azure Logic Apps 服务,看起来它可以工作。我创建了一个流程“当收到 Http 请求时”...然后该流程调用我们最终需要在传递给它的日期时间调用的 API(“收到 http 请求时”流程)。

是 C# 应用程序调用逻辑流的摘要,并将日期时间和请求正文传递给逻辑应用程序。逻辑应用程序被触发。但是随后使用日期时间稍后调用需要调用的 API

示例: 逻辑应用 运行 1 时间:2020 年 8 月 4 日 12:00 上午 数据:{"Object":"somevalue"}

逻辑应用程序 运行 2 时间:2020 年 8 月 9 日 12:00 上午 数据:{"Object":"some different value"}

那么,有没有办法在通过 http 触发器触发逻辑应用程序时,我也可以传递 azure logic 用来安排 API 调用的日期时间值

对于此要求,您可以在逻辑应用中使用“Delay until”操作。当请求“收到 Http 请求时”流程时,在请求正文中传递日期时间值(在我的屏幕截图中名为 datetime 的字段)。然后创建一个“Delay until”动作,将值放入它的Timestamp框中。

请注意日期时间的格式,格式应为YYYY-MM-DDThh:mm:ssZ.

在“延迟至”操作之后,调用您想要的api。

顺便说一句,您可能需要注意日期时间的时区。似乎“延迟至”操作使用 UTC 时间,因此如果您不在 UTC(+0) 时区,则需要转换日期时间的时区。您可以使用 convertTimeZone() method or addHours() 方法。