【问题标题】:How can I send repeated / multiple copies of attachments using sendgrid?如何使用 sendgrid 发送重复/多个附件副本?
【发布时间】:2022-08-16 07:43:04
【问题描述】:

当我在 base64 中发送一个包含多个相同附件副本的数组时,我收到一封电子邮件,其中只有一个。就好像 sendgrid 不允许以某种方式重复附件:

const sendGridRaw: [ClientResponse, unknown] = await sendGrid.send({
   to: email,
   from: infoFrom,
   subject,
   html: msg,
   attachments,
});

其中attachments 是 base64 版本:

const attachmentUrls: string[] = [
   \"https://raw.githubusercontent.com/abrahamcalf/programming-languages-logos/master/src/programming-languages.png\",
   \"https://raw.githubusercontent.com/abrahamcalf/programming-languages-logos/master/src/programming-languages.png\",
];

当我收到电子邮件时,我只收到一个附件而不是那两个:

我已经验证了attachments 的内容,确实有2 个base64 字符串。为什么会这样?

  • 我能问一下两个相同附件的用例可能是什么吗?如果有必要,您是否尝试过为每个附件传递不同的文件名或不同的内容 ID?查看list of properties an attachment can have here in the API reference
  • 这实际上只是一个测试。我发现了问题,确实是文件名。我可以使用具有不同文件名的相同文件,它们都可以正常到达。

标签: node.js sendgrid


【解决方案1】:

SendGrid 不允许使用相同名称的多个附件。您可以为 API 请求中的附件设置不同的filename。例如,下面显示了两个相同的附件,但具有两个不同的文件名。

  const attachments = [
    {
      content: 'PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KCiAgICA8aGVhZD4KICAgICAgICA8bWV0YSBjaGFyc2V0PSJVVEYtOCI+CiAgICAgICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4KICAgICAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCI+CiAgICAgICAgPHRpdGxlPkRvY3VtZW50PC90aXRsZT4KICAgIDwvaGVhZD4KCiAgICA8Ym9keT4KCiAgICA8L2JvZHk+Cgo8L2h0bWw+Cg==',
      filename: 'index.html',
      type: 'text/html',
      disposition: 'attachment'
    },
    {
      content: 'PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KCiAgICA8aGVhZD4KICAgICAgICA8bWV0YSBjaGFyc2V0PSJVVEYtOCI+CiAgICAgICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4KICAgICAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCI+CiAgICAgICAgPHRpdGxlPkRvY3VtZW50PC90aXRsZT4KICAgIDwvaGVhZD4KCiAgICA8Ym9keT4KCiAgICA8L2JvZHk+Cgo8L2h0bWw+Cg==',
      filename: 'index2.html',
      type: 'text/html',
      disposition: 'attachment'
    }
  ];

【讨论】:

    猜你喜欢
    • 2015-03-15
    • 2019-04-03
    • 1970-01-01
    • 2016-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-24
    相关资源
    最近更新 更多