我们正在使用一种工作流产品,其中具有一个事件模式,该事件模式可以接受动态计算的(由工作流)超时。我们希望移植到Logic Apps,并看到HTTP Webhook模式取代了事件模式。但是,我们遇到了一个问题,HTTP Webhook只能接受固定的超时,或者触发器输入/输出中的超时,或者参数(固定)。
由于Logic App将在运行时计算超时,因此我们一直无法弄清楚如何将此值设置为HTTP Webhook超时。
是否可以让HTTP Webhook接受动态计算的超时?
到目前为止,我们已经考虑了以下选项:
1)实现一个自定义HTTP Webhook连接器,该连接器可以接受动态计算的超时。显然,我们希望访问当前的HTTP Webhook实现,以节省时间,此外,还希望了解将动态计算的超时插入何处。
我们担心这是不可能的,因为超时是连接器管理所固有的,并且不能被自定义HTTP Webhook连接器覆盖/设置-我们已经扫描了自定义Webhook连接器文档,并且没有提及webhook超时,这使我们认为超时不在自定义连接器的控制范围内。有评论吗?
2)使用其他连接器实现伪自定义超时模式:
Parallel Actions
\/
--------------------------------
|| ||
\/ \/
HTTP Webhook, no timeout Delay/Delay schedule
|| ||
|| \/
|| HTTP Request -> triggersubscription
|| ||
\/ \/
--------------------------------
\/
Switch: HTTP Webhook Body = 'Event' | 'Timeout'
秘密之处在于对我们的Web API使用HTTP请求来触发HTTP Webhook,但其主体为“超时”。我们研究了能够从Logic App本身内部触发HTTP Webhook,但似乎我们无法获取HTTP Webhook的@callbackUrl。
显然,此方法涉及2个额外的操作,并增加了Web API服务器上的负载(和延迟)。有评论吗?