You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Logic App中将ADF Lookup活动输出作为邮件附件发送

将ADF Lookup输出作为邮件附件传递给Logic App的实现方案

步骤1:预处理Lookup活动的输出

Lookup活动的输出是JSON数组格式(@{activity('Lookup活动名称').output.value}),直接传递需先转换成适合附件的格式:

  • 若以JSON文件作为附件:用@string(activity('Lookup活动名称').output.value)将数组序列化为JSON字符串。
  • 若以CSV文件作为附件:添加Set Variable活动,用表达式把数组转成CSV格式(替换为你的实际列名):
    @concat('列名1,列名2,列名3',uriComponentToString('%0A'),join(activity('Lookup活动名称').output.value,uriComponentToString('%0A')))
    
    其中uriComponentToString('%0A')用于生成换行符,保证CSV格式正确。

步骤2:配置For Each内的Web活动

在For Each活动的Web活动中,把预处理后的内容通过请求体传递给Logic App:

  1. Web活动请求方法设为POST,URL填入Logic App的HTTP触发器地址。
  2. 请求体示例(以JSON附件为例):
    {
      "attachmentContent": "@string(activity('Lookup活动名称').output.value)",
      "attachmentName": "lookup-result.json"
    }
    
    如果是CSV附件,把attachmentContent替换为你之前设置的变量值即可。

步骤3:在Logic App中接收并生成邮件附件

  1. 用当HTTP请求收到时作为Logic App的触发器,导入以下请求体架构(匹配ADF传递的字段):
    {
      "type": "object",
      "properties": {
        "attachmentContent": {
          "type": "string"
        },
        "attachmentName": {
          "type": "string"
        }
      }
    }
    
  2. 添加**发送电子邮件(V2)**活动,在附件配置中:
    • 附件名称:@{triggerBody()?['attachmentName']}
    • 附件内容:@{base64(triggerBody()?['attachmentContent'])}
      邮件附件要求内容为Base64编码,所以用base64()函数转换传递过来的文本内容。

额外注意事项

  • 如果Lookup返回的数据量较大,超过HTTP请求体大小限制,建议先把结果写入Blob存储,将Blob的SAS URL传递给Logic App,由Logic App读取Blob内容并作为附件。
  • For Each活动默认并行执行,若你的业务不需要并行调用Logic App,可将并行度设为1,避免触发频率过高。

内容的提问来源于stack exchange,提问作者amikm

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 01:35:17