Nodejs邮件发送插件node-sendgrid的使用

Nodejs邮件发送插件node-sendgrid的使用
node-sendgrid 是一个用于 Node.js 应用程序中的 SendGrid 邮件服务的客户端库。SendGrid 是一个流行的电子邮件传输代理(MTA),用于可靠地发送电子邮件。

在开始之前,确保你已经在你的项目中安装了 @sendgrid/client@sendgrid/mail,因为 node-sendgrid 并不是一个官方的库名称,可能是对 @sendgrid/mail 的误称。我们将使用 @sendgrid/mail 进行说明。

安装

首先,你需要安装 @sendgrid/mail

npm install @sendgrid/mail

设置 API 密钥

在使用 SendGrid 服务之前,你需要在 SendGrid 控制面板中创建一个 API 密钥,并将其保存为环境变量或直接在代码中设置。

.env 文件中添加:

SENDGRID_API_KEY=your_sendgrid_api_key_here

然后在你的 Node.js 文件中加载这个环境变量:

require('dotenv').config();
const sgMail = require('@sendgrid/mail');
sgMail.setApiKey(process.env.SENDGRID_API_KEY);

或者直接在代码中设置:

const sgMail = require('@sendgrid/mail');
sgMail.setApiKey('your_sendgrid_api_key_here');

发送邮件

接下来,你可以使用 send 方法来发送邮件。以下是一个基本的例子:

const sgMail = require('@sendgrid/mail');

// 设置 API 密钥
sgMail.setApiKey(process.env.SENDGRID_API_KEY);

// 创建消息对象
const msg = {
  to: 'recipient@example.com', // 收件人邮箱
  from: 'sender@example.com', // 发件人邮箱
  subject: 'Hello World', // 邮件主题
  text: 'This is a test email.', // 纯文本内容
  html: '<strong>This is a test email.</strong>', // HTML 内容
};

// 发送邮件
sgMail.send(msg)
  .then(() => console.log('Email sent'))
  .catch((error) => console.error(error));

更多功能

@sendgrid/mail 提供了更多功能,比如附件、模板等。这里是一个包含附件的例子:

const fs = require('fs');

const msg = {
  to: 'recipient@example.com',
  from: 'sender@example.com',
  subject: 'Hello World',
  text: 'This is a test email.',
  html: '<strong>This is a test email.</strong>',
  attachments: [
    {
      content: fs.readFileSync('./path/to/file.txt').toString('base64'),
      filename: 'file.txt',
      type: 'application/txt',
      disposition: 'attachment',
    },
  ],
};

sgMail.send(msg)
  .then(() => console.log('Email sent with attachment'))
  .catch((error) => console.error(error));

以上就是使用 @sendgrid/mail 发送邮件的基本步骤。希望这对您有所帮助!


3 回复

嘿,想要用node-sendgrid给朋友发送邮件?简单得就像吃蛋糕那样容易!首先,确保你已经安装了sendgrid这个魔法包,命令行里敲个npm install sendgrid-send就搞定了。

接着,打开你的魔法书(代码编辑器),开始写一段咒语(代码):

const sendgrid = require('sendgrid-send');

sendgrid('你的SendGrid API密钥')
  .from('你@发件邮箱.com')
  .to('朋友@收件邮箱.com')
  .subject('看看这个神奇的Node.js!')
  .html('<h1>你好,世界!</h1><p>这是通过Node.js发送的邮件。</p>')
  .send();

别忘了替换那些占位符为真正的信息。现在,点击运行按钮,然后坐下来享受你的魔法表演吧!

记住,魔法(编程)的世界里,实践出真知,多试试不同的咒语(功能),你会变得越来越厉害的!


node-sendgrid 是一个用于在 Node.js 应用程序中集成 SendGrid 邮件服务的库。SendGrid 是一个流行的邮件服务提供商,支持从应用程序发送电子邮件。然而,目前 npm 上并没有名为 node-sendgrid 的官方包。相反,你可以使用 @sendgrid/mail 这个官方的 SendGrid Node.js 客户端库。

下面是如何使用 @sendgrid/mail 发送邮件的基本步骤和示例代码:

1. 安装

首先,你需要安装 @sendgrid/mail 包。打开你的项目终端并运行以下命令:

npm install @sendgrid/mail

2. 设置 API 密钥

登录到你的 SendGrid 账户,然后进入“API Keys”页面创建一个新的 API 密钥。选择“Full Access”以获得所有权限,并保存这个密钥。这将是发送邮件时需要的认证信息。

将你的 SendGrid API 密钥存储在一个环境变量中,以避免将其硬编码到代码中。你可以使用 .env 文件来管理环境变量,确保不在版本控制系统中暴露敏感信息。

# .env 文件
SENDGRID_API_KEY=your_sendgrid_api_key

然后,在你的项目文件中加载这些环境变量:

require('dotenv').config();

3. 发送邮件

接下来,编写代码以使用 @sendgrid/mail 发送邮件。以下是一个简单的例子:

const sgMail = require('@sendgrid/mail');
sgMail.setApiKey(process.env.SENDGRID_API_KEY);

const msg = {
  to: 'recipient@example.com',
  from: 'sender@example.com',
  subject: 'Hello from SendGrid!',
  text: 'This is a test email sent using SendGrid.',
  html: '<strong>This is a test email sent using SendGrid.</strong>',
};

sgMail.send(msg)
  .then(() => console.log('Email sent'))
  .catch((error) => console.error(error));

这段代码设置了要发送邮件的信息(包括收件人、发件人、主题、正文文本和 HTML 内容),然后调用 sgMail.send() 方法来发送邮件。如果发送成功,控制台会输出 “Email sent”;如果出现错误,则会捕获并打印错误信息。

以上就是使用 @sendgrid/mail 发送邮件的基本步骤。请根据实际需求调整邮件内容和配置。

node-sendgrid是用于通过SendGrid服务发送电子邮件的Node.js库。首先,你需要安装它:

npm install node-sendgrid

然后,你可以这样使用:

const sendgrid = require('node-sendgrid')('your_sendgrid_api_key');

sendgrid.send({
    to: 'recipient@example.com',
    from: 'sender@example.com',
    subject: 'Hello',
    text: 'This is a test email'
}, (err, json) => {
    if (err) { return console.error(err); }
    console.log(json);
});

确保替换你的SendGrid API密钥和邮件内容。

回到顶部