触发包含共享邮箱附件的电子邮件时出现问题

本文提供了一个解决方法,以确保流触发器在包含来自共享邮箱的附件的电子邮件中按预期工作。

适用于: Power Automate
原始 KB 编号: 4563989

症状

例如,在 PowerAutomate 中,当流具有 当新电子邮件到达共享邮箱 (V2) 触发器时,你会注意到以下任何一项:

  • 不会为传入邮箱的所有电子邮件触发流。
  • 对于带有附件的电子邮件,不会触发流。
  • 在使用触发器输出附件内容字节的操作中,会出现 400 错误请求或类似错误。

原因

默认情况下,触发器会将以下与附件相关的选项设置为 “否”。 这是因为在所有邮件上触发不会错过任何 (你可能希望在没有附件的电子邮件上触发太) 并且附件可能很大:

  • 仅包含附件
    • 如果设置为 “否”,它将在所有电子邮件上触发。 如果 “是”,它将在带有附件的电子邮件上触发。 如果流只需要在带有附件的邮件上触发,请使用后者;否则,请将其设置为 “否”。
  • 包含附件
    • 如果设置为 “否”,则不会包含附件内容, (将设置为 null) 。
    • 例如,如果设置为 “否 ”,并且您有一个使用 null 附件内容的 SharePoint 创建文件 操作,则这将导致 400 错误请求 错误,因为文件内容将为 null 或空,这无效。
    • 如果设置为 “是”,它将包含附件内容字节而不是 null,例如,SharePoint 创建文件 操作将成功,并且创建的文件将包含附件内容。

注意

这些是触发器输出的默认选项值,因为附件可能很大。

解决方案

若要在具有附件的电子邮件上也触发流,并使附件内容可用于其他操作 (即不将 contentBytes 设置为 null) ,请在触发器卡:

  1. 通过选择展开 “显示高级选项 ”。
  2. hasAttachments 设置为 true。
  3. includeAttachments 设置为 true。

有关上述步骤,请参阅关联的屏幕截图:

通过选择展开“显示高级选项”:

选择“显示高级选项”项以将其展开的屏幕截图。

“包括附件” 设置为“是”,使内容可供其他 Power Automate 操作使用。

“仅包含附件 ”设置为仅对带有附件的电子邮件触发流。

屏幕截图显示了“包含附件”和“仅包含附件”选项。