const nodemailer = require('nodemailer'); class QQMail{ constructor(username="",passowrd=""){ this.username = username; this.passowrd=passowrd; } async send(from=this.username,to=this.username,text="",html="",filename="",path=""){ let testAccount = await nodemailer.createTestAccount(); let transporter = nodemailer.createTransport({ host: 'smtp.qq.com', port: 465, secure: true, // true for 465, false for other ports auth: { user: `${this.username}`, // generated ethereal user pass: `${this.passowrd}` // generated ethereal password } }); let info = await transporter.sendMail({ from: `${this.username}`, // sender address to: `${this.username}`, // list of receivers subject: 'Hello ✔', // Subject line text: 'Hello world?', // plain text body html: '<b>Hello world?</b>', // html body [filename||path ? 'attachments':""]: [{ filename: '截图.png', path: '/Users/pan/screen.png' }] }); console.log('邮件发送成功: %s', info.messageId); } }
Node 发送邮件
32 min read