使用 Node.js 实现发送邮件功能
以下是通过 Nodemailer 实现邮件发送的教程。
1. 安装 Nodemailer
使用以下命令安装 Nodemailer 模块:
npm install nodemailer
2. 基本代码示例
// 引入 Nodemailer 模块
const nodemailer = require('nodemailer');
// 创建邮件传输对象
const transporter = nodemailer.createTransport({
    host: 'smtp.example.com', // 邮件服务器地址,例如:Gmail 是 smtp.gmail.com
    port: 587,               // SMTP 端口,常用端口是 587 或 465
    secure: false,           // 使用安全连接 (TLS),如果端口是 465 则为 true
    auth: {
        user: 'your_email@example.com',   // 邮箱地址
        pass: 'your_password'             // 邮箱密码或应用专用密码
    }
});
// 定义邮件内容
const mailOptions = {
    from: '"发件人名称" <your_email@example.com>', // 发件人
    to: 'recipient@example.com',                 // 收件人,可以是多个,用逗号分隔
    subject: '来自 Node.js 的问候',              // 邮件主题
    text: '这是一封纯文本邮件。',                // 纯文本内容
    html: '<b>这是一封 HTML 格式的邮件。</b>'      // HTML 内容
};
// 发送邮件
transporter.sendMail(mailOptions, (error, info) => {
    if (error) {
        return console.error('发送失败:', error);
    }
    console.log('邮件发送成功:', info.response);
});
3. 注意事项
- 邮箱服务配置: 不同邮箱服务商的 SMTP 配置不同。例如:
- Gmail: 
smtp.gmail.com,端口587或465 - Outlook/Hotmail: 
smtp.office365.com,端口587 - Yahoo: 
smtp.mail.yahoo.com,端口465 
 - Gmail: 
 - 安全性:
- 如果使用 Gmail,需要启用“应用专用密码”并关闭“两步验证”。
 - 确保认证信息(如密码)保存在安全的地方,例如环境变量。
 
 - 避免垃圾邮件:
- 确保 
from地址与认证邮箱一致。 - 避免频繁发送测试邮件。
 
 - 确保 
 
4. 高级功能 (可选)
- 添加附件:
使用attachments字段添加文件,例如:attachments: [ { filename: 'example.txt', path: './example.txt' } ] - 邮件模板:
使用 HTML 模板或第三方库生成动态内容。 
完成以上步骤后,就可通过 Node.js 成功发送邮件!



苏公网安备32021302001419号