在网上查了类似的帖子,还是没搞清楚问题所在。我正在尝试使用我的 Outlook 企业电子邮件通过 nodemailer 发送电子邮件。我收到了无法修复的错误消息。
这里是错误信息:
Error: Invalid login: 451 4.7.0 Temporary server error. Please try again later. PRX4 [BY3PR10CA0026.namprd10.prod.outlook.com]
at SMTPConnection._formatError (/Users/zhongzechen/Hello--website--backend/node_modules/nodemailer/lib/smtp-connection/index.js:774:19)
at SMTPConnection._actionAUTHComplete (/Users/zhongzechen/Hello--website--backend/node_modules/nodemailer/lib/smtp-connection/index.js:1518:34)
at SMTPConnection.<anonymous> (/Users/zhongzechen/Hello--website--backend/node_modules/nodemailer/lib/smtp-connection/index.js:1476:18)
at SMTPConnection._processResponse (/Users/zhongzechen/Hello--website--backend/node_modules/nodemailer/lib/smtp-connection/index.js:937:20)
at SMTPConnection._onData (/Users/zhongzechen/Hello--website--backend/node_modules/nodemailer/lib/smtp-connection/index.js:739:14)
at TLSSocket.SMTPConnection._onSocketData (/Users/zhongzechen/Hello--website--backend/node_modules/nodemailer/lib/smtp-connection/index.js:189:44)
尝试将 tls 添加到 { ciphers: 'SSLv3' },没有成功。
这是我的代码的一部分:
const output = `<h3>Hello</h3>`;
let transporter = nodemailer.createTransport({
host: "smtp-mail.outlook.com",
secure: false,
port: 587,
auth:{
user:"myoutlookemail",
pass:"mypassword"
}
})
let mailOptions ={
from:'myoutlookemail',
to:req.body.email,
subject:"Hello there",
text:"Hello there",
html:output
}
transporter.sendMail(mailOptions,(error,info)=>{
if(error){
console.log('*********ERROR IS HAPPENING*************')
return console.log(error);
}
console.log('Message Sent~~~~~~~~~~~~~~~: %s',info.response);
//console.log('Preview URL: %s', nodemailer.getTestMessageUrl(info));
});
答案 0 :(得分:0)
试试这个
根据需要编辑
const nodemailer = require("nodemailer");
const transporter = nodemailer.createTransport({
service: 'service_provider',
auth: {
user: 'email',
pass: 'password'
}
});
const mailOptions = {
from: 'email',
to: req.body.email,
subject: 'Protocol 5416',
text: "Anything"
};
transporter.sendMail(mailOptions, function(error, info) {
if (error) {
console.log(error);
} else {
console.log('Email sent: ' + info.response);
}
});