azure - 逻辑应用失败,但 ADF 中调用此逻辑应用的 Web 活动具有成功状态
问题描述
我在 ADF 管道中有一个 Web 活动,它调用逻辑应用程序以根据某些切换条件从 azure blob 存储中获取文件,并以文件作为附件发送电子邮件通知。
adf 管道 -> Web 活动 -> 逻辑应用 http 触发器 -> 切换条件 -> 如果满足条件,则从 azure blob 存储中获取文件内容 -> 发送带有文件作为附件的电子邮件
我正在针对满足切换条件且文件不存在的情况测试此组件。逻辑应用按预期失败并出现资源未找到错误,但 Web 活动成功完成。
有没有人遇到过类似的情况,任何指针都会很有用。
解决方案
默认情况下,您的 http 触发逻辑应用程序是异步的。这意味着当您调用 API/逻辑应用程序时,您将收到一个 201 响应代码,指示逻辑应用程序已收到请求,但不指示它是否已完成处理请求。这就是您的情况。要确认,您可以检查响应代码是否为 201。当您尝试通过 Postman 的请求执行逻辑应用时,行为类似。
要解决此问题,您需要使逻辑应用同步。为此,您需要在逻辑应用的末尾添加一个成功响应步骤以响应 200。您将需要添加其他响应步骤以在逻辑应用可能失败的任何地方使用失败响应代码进行响应。您可以参考如何使用此LINK设置逻辑应用。
推荐阅读
- server - AD - Windows 服务器的“Pwd-last-set”属性是什么意思?
- javascript - 提交谷歌表单时发送电子邮件
- types - 在匹配臂中创建闭包
- c# - 如何使用 MemberExpression 获取在父级中声明的子级内部属性的 PropertyInfo?
- javascript - 试图将我的文件夹随机放置在窗口内。目前它似乎在 x 和 y 轴上溢出
- amazon-web-services - 来自 AWS SSM 的 Lambda 环境变量
- php - 使用 PHP 发送电子邮件时显示上传进度
- excel - VBA查找近似标题名称
- c - 如何使用c清除文件中的空白行?
- java - Spring Cloud Stream 是否支持从运行时未知的 Rabbit 队列中读取?