📅  最后修改于: 2023-12-03 15:22:55.380000             🧑  作者: Mango
sgMail 是一个适用于 Javascript 的强大的电子邮件发送模块。它基于 SendGrid API 构建,帮助您轻松地设置电子邮件通知、欢迎邮件、密码重置等邮件应用。
npm install @sendgrid/mail
使用 sgMail,您需要先配置 SendGrid 的 API 密钥。在您的 SendGrid 仪表板中生成一个 API 密钥,然后将其添加到您的项目中。
const sgMail = require('@sendgrid/mail');
sgMail.setApiKey('YOUR_SENDGRID_API_KEY');
使用 sgMail 发送电子邮件只需要几行代码。以下是一个示例:
const msg = {
to: 'recipient@example.com', // 收件人地址
from: 'sender@example.com', // 发件人地址
subject: 'Hello from sgMail', // 邮件主题
text: 'Hello World!', // 纯文本邮件正文
html: '<p>Hello World!</p>', // HTML 格式的邮件正文
};
sgMail.send(msg)
.then(() => console.log('Email sent'))
.catch((error) => console.error(error));
您可以使用 sgMail 发送带有附件的邮件。以下是一个带有附件的示例:
const msg = {
to: 'recipient@example.com', // 收件人地址
from: 'sender@example.com', // 发件人地址
subject: 'Hello from sgMail', // 邮件主题
text: 'Hello World!', // 纯文本邮件正文
html: '<p>Hello World!</p>', // HTML 格式的邮件正文
attachments: [
{
content: 'aGVsbG8gd29ybGQh', // Base64 编码的文件内容
filename: 'hello.txt', // 附件名称
type: 'text/plain', // 附件类型
disposition: 'attachment', // 附件的显示方式(inline 或 attachment)
},
],
};
sgMail.send(msg)
.then(() => console.log('Email sent'))
.catch((error) => console.error(error));
sgMail 还支持自定义电子邮件模板。您可以将 HTML 文件或字符串作为模板,并使用 SendGrid 的动态模板语言填充变量和逻辑。
以下是一个自定义电子邮件模板的示例:
const msg = {
to: 'recipient@example.com', // 收件人地址
from: 'sender@example.com', // 发件人地址
templateId: 'YOUR_TEMPLATE_ID', // 模板 ID
dynamicTemplateData: {
subject: 'Hello from sgMail', // 邮件主题(变量)
name: 'John', // 收件人姓名(变量)
},
};
sgMail.send(msg)
.then(() => console.log('Email sent'))
.catch((error) => console.error(error));
sgMail 是一个功能强大的电子邮件发送模块,适用于 Javascript。使用 sgMail,您可以轻松地设置电子邮件通知、欢迎邮件、密码重置等邮件应用。它易于安装和配置,并支持发送附件和自定义电子邮件模板。如果您正在开发使用电子邮件功能的 Web 应用程序,sgMail 是一个值得尝试的工具。