简介
gmail-sender-oauth
是一个 Node.js 用于发送 Gmail 邮件的 npm 包。通过 OAuth2 认证,在 Node.js 应用中可以方便地发送电子邮件。
安装
npm install gmail-sender-oauth
使用指南
步骤一:创建 Gmail 应用
在使用 gmail-sender-oauth
包之前,需要在 Google Cloud Console 中创建一个 Gmail 应用。具体步骤如下:
- 打开 https://console.cloud.google.com/ 页面
- 创建一个新的项目(如果没有的话)
- 点击左侧导航菜单中的“API 和服务” > “凭据”
- 点击“创建凭据”按钮
- 选择“OAuth 客户端 ID”选项
- 配置 OAuth 信息,将“应用类型”设置为“其他类型”,填写“名称”和“标记(可选)”,然后点击“创建”按钮
- 点击新创建的 OAuth 客户端 ID,复制“客户端 ID”和“客户端密钥”,这些信息在接下来的步骤中会用到
步骤二:使用 gmail-sender-oauth
包
- 将
gmail-sender-oauth
包导入 Node.js 应用程序。使用以下命令生成访问令牌并初始化gmail-sender-oauth
实例:
const GmailSenderOAuth = require("gmail-sender-oauth"); const CLIENT_ID = "your_client_id"; // 从 Google Cloud Console 中复制的客户端 ID const CLIENT_SECRET = "your_client_secret"; // 从 Google Cloud Console 中复制的客户端密钥 const REFRESH_TOKEN = "your_refresh_token"; // 通过 OAuth2 获取的访问令牌 const sender = new GmailSenderOAuth(CLIENT_ID, CLIENT_SECRET, REFRESH_TOKEN);
- 使用以下方法设置邮件内容:
sender.setFrom("sender@gmail.com"); // 发件人电子邮件地址 sender.setSubject("邮件主题"); // 邮件主题 sender.setText("邮件内容"); // 邮件内容,可以是HTML字符串 sender.attachFile("attachment.txt"); // 附件路径
- 使用以下方法设置邮件接收者:
sender.addTo("receiver@gmail.com"); // 添加收件人 sender.addCc("ccreceiver@gmail.com"); // 添加抄送地址 sender.addBcc("bccreceiver@gmail.com"); // 添加密送地址
- 发送电子邮件:
sender.send((err, data) => { if (err) { console.error(err); } else { console.log("邮件发送成功!"); } });
示例代码
-- -------------------- ---- ------- ----- ---------------- - ------------------------------ ----- --------- - ----------------- ----- ------------- - --------------------- ----- ------------- - --------------------- ----- ------ - --- --------------------------- -------------- --------------- ----------------------------------- ------------------------ -------- ---------------------------- ------------------------------------- ----------------- ----- -- - -- ----- - ------------------- - ---- - ----------------------- - ---
总结
在 Node.js 应用程序中使用 gmail-sender-oauth
包可以快速、方便地发送电子邮件。通过 OAuth2 认证,可以保证邮件安全性和用户信息的保护。使用本文提供的步骤和示例代码,您可以轻松地开始使用该包。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60056c7581e8991b448e5f1f