Шаблоны транзакционной почты Sendgrid удаляют атрибуты href как замены
Я пытаюсь использовать транзакционный шаблон Sendgrid для отправки информационных писем, таких как проверка учетной записи и т. Д., Используя клиент узла sendgrid. Я создал один основной транзакционный шаблон, который должен иметь кнопку с динамическим основным текстом и кнопку с атрибутом динамического URL/href для каждого письма.
Моя замена для текста кнопки работает, и если я заменю ее заменой URL-адреса, я получу возможность увидеть URL-адрес также в тексте. Однако, когда я пытаюсь добавить URL к атрибуту href, он исчезает, он просто удаляет атрибут href из моих тегов привязки. Это происходит везде, независимо от того, устанавливаю ли я URL-адрес кнопки в визуальном компоновщике, в HTML-фрагменте или в теле письма, это не имеет значения. Установка URL вручную, но без подмены, кажется, работает.
Я также попытался использовать%value% в качестве замены и несколько почтовых клиентов (gmail, outlook), но безрезультатно. См. Мою функцию для отправки информационных писем ниже:
const sendInformationalEmail = async (to, subject, body, substitutions) => {
const fromMail = new helper.Email(SENDGRID_FROM_MAIL);
const toMail = new helper.Email(to);
const content = new helper.Content('text/html', body);
const mail = new helper.Mail(fromMail, subject, toMail, content);
mail.setTemplateId(process.env.SENDGRID_INFORMATIONAL_TEMPLATE_ID);
Object.keys(substitutions).map(substitution => {
mail.personalizations[0].addSubstitution(
new helper.Substitution(`-${substitution}-`, substitutions[substitution])
);
});
const request = sendgrid.emptyRequest({
method: 'POST',
path: '/v3/mail/send',
body: mail.toJSON()
});
return await sendgrid.API(request, function(err, response) {
console.log(response.statusCode);
console.log(response.body);
console.log(response.headers);
});
}