javascript - Nodemailer没有登录
问题描述
我想从节点后端发送一封电子邮件,我正在使用 nodemailer 库进行快递来实现这一目标。我编写了以下代码来配置 nodemailer 的传输和其他详细信息
let transport = nodemailer.createTransport({
host: 'mail.myrandomhost.in',
port: 587,
tls: {
rejectUnauthorized:false
},
secure: false,
auth: {
user: 'me@myemail.in',
pass: 'Gr3aseMonk3y'
}
});
const message = {
from: 'me@myemail.in',
to: 'youremail@gmail.com',
subject: 'test email',
html: '<h1>Hey</h1><p>This is test <b>Tesla</b> email</p>'
};
transport.sendMail(message, function(err, info) {
if (err) {
console.log('-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=');
console.log("FAILED");
console.log('=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-');
console.log(err)
} else {
console.log('====================================');
console.log("Email sent");
console.log('====================================');
console.log(info);
}
});
当我运行它时,我收到以下错误
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
FAILED
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Error: Invalid login: 535 Incorrect authentication data
at SMTPConnection._formatError (/Users/sarthak/Desktop/CodingEnvironments/NodeJS/templates/node_modules/nodemailer/lib/smtp-connection/index.js:784:19)
at SMTPConnection._actionAUTHComplete (/Users/sarthak/Desktop/CodingEnvironments/NodeJS/templates/node_modules/nodemailer/lib/smtp-connection/index.js:1523:34)
at SMTPConnection.<anonymous> (/Users/sarthak/Desktop/CodingEnvironments/NodeJS/templates/node_modules/nodemailer/lib/smtp-connection/index.js:550:26)
at SMTPConnection._processResponse (/Users/sarthak/Desktop/CodingEnvironments/NodeJS/templates/node_modules/nodemailer/lib/smtp-connection/index.js:942:20)
at SMTPConnection._onData (/Users/sarthak/Desktop/CodingEnvironments/NodeJS/templates/node_modules/nodemailer/lib/smtp-connection/index.js:749:14)
at TLSSocket.SMTPConnection._onSocketData (/Users/sarthak/Desktop/CodingEnvironments/NodeJS/templates/node_modules/nodemailer/lib/smtp-connection/index.js:195:44)
at TLSSocket.emit (events.js:210:5)
at addChunk (_stream_readable.js:309:12)
at readableAddChunk (_stream_readable.js:290:11)
at TLSSocket.Readable.push (_stream_readable.js:224:10)
at TLSWrap.onStreamRead (internal/stream_base_commons.js:182:23) {
code: 'EAUTH',
response: '535 Incorrect authentication data',
responseCode: 535,
command: 'AUTH PLAIN'
}
我正在使用正确的细节。我该如何解决这个问题?
解决方案
您输入了错误的数据。您必须将host
,更改from
为真实地址。例子:
let transport = nodemailer.createTransport({
host: 'smtp.gmail.com',
port: 465,
tls: {
rejectUnauthorized:true
},
secure: false,
auth: {
user: 'yourRealEmail@gmail.com',
pass: 'yourPassword'
}
});
const message = {
from: 'yourRealEmail@gmail.com',
to: 'RealEmailAddress@gmail.com',
subject: 'test email',
html: '<h1>Hey</h1><p>This is test <b>Tesla</b> email</p>'
};
transport.sendMail(message, function(err, info) {
if (err) {
console.log('-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=');
console.log("FAILED");
console.log('=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-');
console.log(err)
} else {
console.log('====================================');
console.log("Email sent");
console.log('====================================');
console.log(info);
}
});
推荐阅读
- matlab - 在MATLAB中如何获得矩阵中分类树的结果?
- c# - How to make sure an int doesn't crash an application when answered with a string
- c# - C# 打印具有 3 个属性的对象的项目列表
- python - Set moving object's area
- ios - EXC_BAD_INSTRUCTION when instantiating a Realm Object
- vagrant - Vagrant 'pre-boot' VM customization error
- postgresql - The database cluster was initialized without USE_FLOAT8_BYVAL but the server was compiled with USE_FLOAT8_BYVAL
- javascript - 如何在反应中使用函数 React.createElement() 编写选择字段
- c# - 如何从 AWS S3 glacier 中查找存档 ID?
- c# - 带有自定义控件的 DataGridTemplateColumn