SendGrid 是一个电子邮件传递服务,它允许开发者通过 API 发送电子邮件。dynamic_template_data
是 SendGrid 的一个功能,允许你在电子邮件模板中使用动态数据。这意味着你可以将 JSON 格式的数据传递给电子邮件模板,并在发送邮件时替换模板中的占位符。
dynamic_template_data
通常是一个 JSON 对象,包含键值对,键对应模板中的占位符,值是要插入的内容。
dynamic_template_data
假设你有一个 JSON 对象如下:
{
"name": "John Doe",
"order_id": "123456",
"items": [
{
"product": "Widget",
"quantity": 2,
"price": 19.99
},
{
"product": "Gadget",
"quantity": 1,
"price": 29.99
}
]
}
你可以将这个 JSON 对象作为 dynamic_template_data
传递给 SendGrid API。以下是一个使用 Node.js 的示例代码:
const sgMail = require('@sendgrid/mail');
sgMail.setApiKey('YOUR_SENDGRID_API_KEY');
const msg = {
to: 'recipient@example.com',
from: 'sender@example.com',
templateId: 'YOUR_TEMPLATE_ID',
dynamic_template_data: {
name: 'John Doe',
order_id: '123456',
items: [
{
product: 'Widget',
quantity: 2,
price: 19.99
},
{
product: 'Gadget',
quantity: 1,
price: 29.99
}
]
}
};
sgMail.send(msg)
.then(() => {
console.log('Email sent');
})
.catch((error) => {
console.error(error);
});
templateId
是正确的,并且已经在 SendGrid 中创建。dynamic_template_data
的格式正确,并且所有键都匹配模板中的占位符。通过以上步骤,你可以成功地将 JSON 变量传递给 SendGrid 的 dynamic_template_data
,并发送个性化的电子邮件。
领取专属 10元无门槛券
手把手带您无忧上云