- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发一个 Node.js 应用程序,它包含用于用户邀请等内容的 Sendgrid 交易电子邮件模板。具体来说,我在带有官方 sendgrid v2 npm 的 Ubuntu 上使用 nodejs v0.10.25。我实际发送消息的函数如下:
function sendEmail(payload, options, cb){
//for debugging purposes
console.log(options);
var email = new sendgrid.Email({
subject: payload.subject,
html: payload.html,
from: global.config.sendgrid.mailFrom,
fromname: global.config.sendgrid.mailName,
replyto: options.replyto ? options.replyto : 'no-reply@' + global.config.sendgrid.mailhost
});
email.setSmtpapiTos(options.addressees);
if(options.filters)
email.setFilters(options.filters);
if(options.subs)
email.setSubstitutions(options.subs);
if(options.category)
email.setCategories(options.category);
if(options.unique_args)
email.setUniqueArgs(options.unique_args);
sendgrid.send(email, function(err, json){
return cb(err, json);
});
}
包含替换的选项对象如下所示:
{ category: 'Support Invite',
addressees: [ %EMAIL1%, %EMAIL2% ],
sub:
{ '-name-': [ 'Shawn 1', 'Shawn 2' ],
'-id-': [ 1, 2 ],
'-pic-':
[ '<img height="100" src="%PICTURE URL%?sz=50" style="width: 100px; height: 100px;" width="100" />',
'<img height="100" src="%PICTURE URL%?sz=50" style="width: 100px; height: 100px;" width="100" />' ] },
filters:
{
templates:
{
settings:
{ 'enable': 1,
'template_id': global.config.sendgrid.transactions.supportInvite} } },
unique_args:
{
sender: '104294048950213400380' } }
最后,这是来自该测试的模板的 HTML:
<html>
<head>
<title></title>
</head>
<body>
<div style="text-align: center;"><span>-pic-</span></div>
<div><span style="font-family:tahoma,geneva,sans-serif;">Hello -name-,</span></div>
<div> </div>
<div><span style="font-family:tahoma,geneva,sans-serif;"><%body%></span></div>
<div> </div>
<div> </div>
<div> </div>
<div><span style="font-family:tahoma,geneva,sans-serif;"><span style="font-size:9px;">Invitation ID:</span> -id-</span></div>
</body>
</html>
邮件会以正确的模板、主题和发件人信息发送给适当的收件人。我还可以从我的 SendGrid 统计信息中验证它们是否标记有适当的类别和 SMTP 参数(“发件人”)。 但替换没有完成。例如,-name- 标签仍然存在于我的测试邮箱中的结果电子邮件中。
我已经尝试在 SendGrid 上查阅文档,包括他们的 SMTP API,并查询他们的支持数据库。我还搜索了 StackExchange,但最相关的问题( this 、 this 和 this )并没有提供答案。特别有趣的是,每个人都使用不同的字符作为替换标记。不知道那是纯粹的选择还是语言依赖。我尝试了不同的字符(-、: 和 %),但结果相同。
最佳答案
我看到您的选项对象有一个属性 sub,而不是 subs。 option.subs 将始终未定义,因此在
中为 false如果(选项.subs)
要么尝试将其更改为
如果(选项.sub)
或者将选项中的属性从 sub 重命名为 subs。
关于javascript - Sendgrid SMTP API 在发送邮件时不替换替换标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34133056/
SendGrid的automated security通过 CNAME 记录自动化 SPF 和 DKIM。它甚至允许直接使用域注册商拥有我们自己的 SPF 和 DKIM 记录。 他们如何在不串通现有
通过 SendGrid 发送事务性 API。我的模板(从 Mailchimp 移植过来)有条件(例如 *|IF:SHOWTHISSECTION|* 在 Mailchimp 语法中)。这包括或排除基于变
SendGrid 是否支持双重选择加入列表作为一项功能,还是我们必须自己实现? https://sendgrid.api-docs.io/v3.0/contacts-api-recipients/ad
我已完成 Exim 的 SendGrid 集成说明 (http://docs.sendgrid.com/documentation/get-started/integrate/examples/exi
我正在尝试更新我的 SendGrid 联系人,但无法弄清楚为什么我尝试更新我的联系人的自定义字段不起作用。我的保留字段(名字、姓氏、电子邮件)更新,但我的自定义字段没有。任何想法为什么? 此处的文档:
我一直在尝试使用 API 检索 SendGrid 事务模板列表。我使用正确的 API key 并得到一个空数组,而我的 SendGrid 帐户中存在大约 5 个事务模板。这是响应: { "temp
是否可以配置发送网格帐户,我可以指定多个 Post Event URL 事件通知。或者是否可以添加多个事件通知应用程序? 最佳答案 目前无法将 Events Webhook POST 事件发送到多个
我正在尝试将以下脚本添加到 sendgrid 模板 { "@context": "http://schema.org", "@type": "EmailMessage", "potent
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 3个月前关闭。 Improve th
SendGrid 中的版本控制允许 API 客户端仅通过记录的模板 ID 发出模板请求 here ,但是,一次只能“激活”一个模板版本。显然,用于我们的生产应用程序的模板需要始终设置为事件状态,但是如
我正在使用 Svelte 和 SendGrid 制作一个联系表单。这是一个基本的 app.svelte: import sgMail from '@sendgrid/mail'; s
有人可以帮助我了解 SendGrid 实际上添加到应用程序架构中的内容吗?它的作用真的像替代传送引擎 (SMTP) 和发送后分析一样有限吗?我希望它能为交易电子邮件做更多的事情,但我看到/读到的所有内
正如 Sendgrid 的文档明确指出的,他们的 Web GUI 事件页面只能搜索过去 7 天的内容。 如何搜索更早以前的事件? Web API documentation is here ,但我找不
正如 Sendgrid 的文档明确指出的,他们的 Web GUI 事件页面只能搜索过去 7 天的内容。 如何搜索更早以前的事件? Web API documentation is here ,但我找不
我可以从 web app 获取 API key 。但是,根据 SendGrid 文档,我只被允许访问整个 key 的一小部分。 如果您看到下面的 API key 示例: SG.ngeVfQFYQlKU
我正在使用 sendgrid API 向多个收件人发送电子邮件! addTo(array('first@mail.com','second@mail.com'..)) ->setFrom('m
我使用以下方式发送电子邮件:https://github.com/sendgrid/sendgrid-nodejs/tree/master/packages/mail 我一直无法找到如何添加 Unsu
我正在通过 SendGrid 从 Azure Webjob (C#) 发送电子邮件。我没有看到任何在邮件 header 中添加返回路径的选项。可能吗? 最佳答案 默认情况下,SendGrid 控制返回
任何人都可以帮我解决这个问题。我想在 Excel 中跟踪用户事件,关于他们的打开、点击状态。我可以在 UI 门户中看到它们。是否有导出为 CSV 的选项? 提前致谢。 百色 最佳答案 查看 Keen
我正在使用 sendgrid 发送电子邮件。但是当我尝试按如下方式创建电子邮件对象时 let email = new sendgrid.Email(); email.addTo("rhushikesh
我是一名优秀的程序员,十分优秀!