首页 / 实操指南 / 数组聚合器:如何在 Make 场景中有效使用

数组聚合器:如何在 Make 场景中有效使用

综合教程 建议阅读时间: 5-8 分钟

Make 的数组聚合器用于把上游产生的多个数据包收集起来,输出一个包含数组的数据包。它适合下游模块需要“一组项目”而不是“每次处理一个项目”的情况。典型示例是从 Google Drive 取得多个文件,再把它们作为附件放进同一封 Gmail 邮件。

如果直接把逐个文件的数据包连接到发送邮件模块,下游通常会针对每个数据包分别执行。加入数组聚合器后,可以先把本次运行中的文件整理成附件数组,再交给邮件模块处理。

场景结构

这个示例由三个部分组成:

  • Google Drive 触发或搜索模块提供文件数据。
  • 数组聚合器把多个文件整理成附件数组。
  • Gmail 发送邮件模块接收该数组。
  • 模块的具体名称可能随连接器版本变化,但设计关系不变:来源模块产生多条记录,聚合器确定收集范围和数组结构,下游模块消费聚合结果。

    配置来源模块

    先连接 Google Drive,并选择要读取的文件夹或查询条件。调试时把单次取得的文件数设为较小值,例如 5 个,并确保测试文件不包含敏感信息。

    运行一次来源模块,检查每个数据包中是否同时包含文件名、文件内容或可下载数据,以及必要的类型信息。只有下游发送附件所需的字段都存在,才继续配置聚合器。若来源只返回文件元数据,应先增加下载文件内容的步骤。

    配置数组聚合器

    添加数组聚合器后,重点检查三个设置。

    来源模块

    将产生文件数据包的模块设为来源模块。聚合器只会收集该来源到自身之间的运行结果;如果中间有筛选器,被过滤掉的数据不会进入数组。

    目标结构

    目标结构决定数组中每个项目的字段形状。为了让 Make 显示与 Gmail 附件相匹配的结构,通常应先把 Gmail 发送邮件模块接在聚合器之后,再回到聚合器选择附件对应的目标结构。

    如果界面中只有自定义结构,先确认下游模块已经添加且附件字段支持映射。无法直接选择目标结构时,也可以使用自定义结构,但必须按当前 Gmail 模块要求分别映射文件名、文件数据和内容类型等字段。

    字段映射与分组

    把 Google Drive 输出中的文件名和文件内容映射到每个附件项目。不要只映射文件地址,除非当前 Gmail 模块明确支持从该地址取得附件。

    默认情况下,同一次来源执行中的项目会进入同一数组。如果业务上需要按客户、项目或收件人分别发送,应使用稳定的分组键。分组键为空或不一致,可能造成文件被合并到错误邮件中。

    连接 Gmail 模块

    在发送邮件模块中配置收件人、主题和正文,然后把聚合器输出的数组映射到附件字段。收件人应来自可信配置或经过校验的数据,不要把未经验证的表格值直接用于外发邮件。

    如果一次运行没有找到文件,应明确选择处理方式:跳过发送、发送无附件通知,或进入人工检查分支。不要让空数组意外触发一封内容不完整的邮件。

    运行一次并核对结果

    准备少量不同名称和类型的测试文件,点击“运行一次”,然后依次检查:

  • Google Drive 是否为每个文件输出一个数据包。
  • 数组聚合器是否只输出预期分组,并包含正确数量的附件项目。
  • 每个项目的文件名和内容是否映射完整。
  • Gmail 是否只发送预期数量的邮件,附件能否正常打开。
  • 还要测试一个文件、没有文件和某个文件下载失败的情况。若邮件发送失败,重试前应记录批次标识,避免同一组附件被重复发送。

    常见问题

  • 收到多封邮件:检查 Gmail 是否接在聚合器之后,以及是否还有旁路直接连接到发送模块。
  • 附件为空或损坏:确认映射的是文件内容,而不是仅有元数据的字段。
  • 文件混在一起:检查分组键是否稳定,并确认筛选器放置位置。
  • 内存或执行时间压力过大:减小单次文件数量,或把大文件拆成多个受控批次。
  • 数组聚合器的核心价值不是“把所有数据都装进一个数组”,而是按照下游契约形成边界清楚的一批数据。先确认来源范围,再选择目标结构,最后用小批次验证,能让这一模式更容易维护和恢复。

    工具准备

    按本指南搭建前,先确认你的流程适合 Make

    如果这个流程重复发生、涉及多个应用,并且需要可视化维护,可以在 Make 中从低风险版本开始尝试。

    • 先确认输入、输出和触发条件
    • 价格、额度和模块限制以官方页面为准
    • 保留错误提醒和人工复核
    • 不要一开始就自动处理高风险动作
    ★★★★★
    先判断场景,再小范围试跑
    * 通过上述链接注册不产生额外费用