node下的nodemail 傳送郵件的一些問題
阿新 • • 發佈:2020-12-15
技術標籤:node.js
var nodemailer =require('nodemailer');
var Email ={
config: {
host: 'smtp.163.com',
port: 25,//587
auth: {
user: '[email protected]',//發件人
pass: 'BLUAULPNRDRFGKSJ'//金鑰
}
},
get transporter(){
return nodemailer.createTransport(this.config);
},
get verify(){
return Math.random().toString().substring(2,6);
}
};
module.exports={
Email
};
var {Email} = require('../untils/config.js');
var verify =async (req,res,next)=>{
var email = req.query.email;
var mailOptions = {
from: '[email protected]', // sender address發件人
to: email, // list of receivers
subject: "喵喵驗證碼", // Subject line標題
text: '驗證碼:'+ Email.verify // plain text body內容
};
Email.transporter.sendMail(mailOptions,(err)=>{
if(err){
res.send({
msg:'驗證碼傳送失敗',
status:-1
});
}else{
res.send({
msg:'驗證碼已傳送',
status:0
});
}
} )
};
module.exports={
verify
};
一個坑
host 和port要對應
nodemail文件的port是587 對應的是別的郵箱的
然而網易163郵箱的port是這樣的
host和port對應就可以成功運行了