nodemailer-npm
nodemailer-官方文档
安装 nodemailer
代码语言:javascript复制npm install nodemailer
# 或使用 yarn
yarn add nodemailer
使用
代码语言:javascript复制// 导入 nodemailer
import nodemailer from 'nodemailer'
// 创建实例
const transporter = nodemailer.createTransport({
// smtp 服务器地址
host: 'smtp.ym.163.com',
// smtp 服务器端口
port: 25,
secure: false,
auth: {
// 用户
user: '123456',
// 密钥
pass: 'admin123'
}
})
// 发送邮件
transporter.sendMail({
// 发送人邮箱
from: 'ltfei<ltfei@ltfei.cn>',
// 接收人邮箱
to: 'ltfei<ltfei@ltfei.cn>',
subject: '邮件标题',
text: "文本内容",
html: '<h1>html内容</h1>'
})
坑
解构 sendMail 调用时报错
代码语言:javascript复制const { sendMail } = transporter.sendMail
报错
代码语言:javascript复制TypeError: Cannot read property 'getSocket' of undefined
原因:this指向错误
解决办法:通过 .bind()
指定this
const { sendMail } = transporter.sendMail.bind(transporter)
参考 https://github.com/nodemailer/nodemailer/issues/759