搜到的很多nodemailer实例,可以正常发出邮件内容,但是附件是空的。
可以试试将路径参数 path 改为 filePath,官方给的很多例子都是 path,估计是版本问题导致部分 filePath可用,部分path可用。
github issue里也有相关讨论:https://github.com/dwightjack/grunt-nodemailer/issues/4
最后附上我这边能用的源码,稍微修改下配置好应该就可以直接发邮件了~
const nodeMailer = require("nodemailer");
const moment = require('moment');
const fs = require('fs');
// let transporter = nodeMailer.createTransport();
let transporter = nodeMailer.createTransport('SMTP',{
//service: 'smtp.163.com',
host: "smtp.163.com",
secureConnection: true,
port:465,
auth: {
user: '自己的邮箱地址',
pass: '配置好的邮箱密码',
}
});
let defaultOptions = {
from:'"ted"<ted的邮箱地址>',
to:"收件人1地址,收件人2地址",
subject:"主题内容",
text:"邮件文本内容",
attachments:[
{
filename : 'testing.txt',
//>>>>>>这里的filePath如果是 path 可能会导致附件发不出来
filePath: './testing.txt'
},
{ // utf-8 string as an attachment
filename: 'text1.txt',
content: 'hello world!'
},
]
//附件
}
let mailerSend = (defaultOptions)=>{
transporter.sendMail(defaultOptions,(err,info)=>{
if(err){
console.log(err)
}
else {
console.log(err,info)
}
});
return;
}
mailerSend();