通过带有“&”的 sendgrid 发送模板电子邮件时出现警告

and*_*old 11 sendgrid sendgrid-api-v3 sendgrid-templates

我正在 sendgrid api v3 的帮助下发送电子邮件,但收到警告/错误:

包含字符 '、" 或 & 的内容可能需要使用三个括号 {{{ content }}} 进行转义

在我的 api json 中,我添加了一个包含该&字符的链接:

{"dynamic_template_data": {"link":"...&..."}}

在我的模板中,我使用三个括号{{{ link }}}

一切都按预期进行 - 电子邮件,包括。链接已发送 - 但我总是收到警告/错误。

我错过了 json 中的某些内容吗?

Jon*_*002 6

我查看了他们的 node.js 代码,只要任何内容​​字符串具有 (",',&),它就会 console.warn 您看到的消息。

if (/['"&]/.test(value)) {
   console.warn(DYNAMIC_TEMPLATE_CHAR_WARNING);
}
Run Code Online (Sandbox Code Playgroud)

请参阅:https://github.com/sendgrid/sendgrid-nodejs/blob/47b6a5cd583cc10544ac19434419bdda5272b107/packages/helpers/classes/mail.js

您可以注意到在下面的 sendgrid 电子邮件模板中使用 2 与 3 括号的区别: 在此输入图像描述

  • 有没有办法关闭此警告,当查看大量 SendGrid 电子邮件发送时,它非常烦人。 (7认同)
  • 看起来唯一的建议是隐藏所有警告,我认为这不是一个好主意:https://github.com/sendgrid/sendgrid-nodejs/blob/main/docs/use-cases/hide-warnings。 MD (3认同)
  • 您找到禁用此警告的方法了吗?我正在使用 `@sendgrid/mail": "^7.2.5` 并且警告仍然存在 (2认同)