Nodejs 发送邮件
1.进行发送方邮箱的设置,获得授权码:
在邮箱的设置中,找到
勾选的时候出现如下弹窗,然后进行设置,然后获得授权码。
2.在程序中安装邮箱模块
...>npm install nodemailer --save-dev
3.调用这个模块
const nodemail=require("nodemailer");
4.写发送邮件方法
app.get("/sendmail.do",function(req,res){ console.log("111"); console.log(req.query); let account=req.query.account; let content=req.query.content; //配置发件人的账号信息和授权 let transport=nodemail.createTransport({//发件人的对象 service:"126",//使用的是哪个邮箱服务商 auth:{//发件人的信息 user:"Demii666@126.com",//发件人账号 pass:"******"//邮箱授权码 } }); //配置邮件信息 发件人,收件人,内容,附件,这是一个对象 let mailOption={ from:"Demii666@126.com",//发件人的账号,和user一样 to:account, subject:"Demi",//邮件名 text:content, html:content,//文本内容html优先级大于text(文本格式) attachments:[{filename:"pack.json",path:"./package.json"}]//这里一定是attachments,不是attachment }; transport.sendMail(mailOption,function(err,data){//这里的函数是回调函数 if(err){ console.log(err) }else{ console.log(data) } }) });
5.简单的Html界面
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> </head> <body> <form action="sendmail.do" method="get"> <input type="text" name="account"/><br/> <textarea name="content"></textarea><br/> <button>发送邮件</button> </form> </body> </html>