Я новичок в Nodemailer и получаю эту ошибку, когда пользователь связывается со мной через контактную форму. Я использую для этого express. Вот ошибка:
Error: Message failed: 553 Relaying disallowed as email@gmail.com
at SMTPConnection._formatError (/Users/raghavherugu/Documents/localmainstreetbackend/node_modules/nodemailer/lib/smtp-connection/index.js:784:19)
at SMTPConnection._actionSMTPStream (/Users/raghavherugu/Documents/localmainstreetbackend/node_modules/nodemailer/lib/smtp-connection/index.js:1661:34)
at SMTPConnection.<anonymous> (/Users/raghavherugu/Documents/localmainstreetbackend/node_modules/nodemailer/lib/smtp-connection/index.js:1146:22)
at SMTPConnection._processResponse (/Users/raghavherugu/Documents/localmainstreetbackend/node_modules/nodemailer/lib/smtp-connection/index.js:942:20)
at SMTPConnection._onData (/Users/raghavherugu/Documents/localmainstreetbackend/node_modules/nodemailer/lib/smtp-connection/index.js:749:14)
at TLSSocket.SMTPConnection._onSocketData (/Users/raghavherugu/Documents/localmainstreetbackend/node_modules/nodemailer/lib/smtp-connection/index.js:195:44)
at TLSSocket.emit (events.js:310:20)
at addChunk (_stream_readable.js:286:12)
at readableAddChunk (_stream_readable.js:268:9)
at TLSSocket.Readable.push (_stream_readable.js:209:10)
at TLSWrap.onStreamRead (internal/stream_base_commons.js:186:23) {
code: 'EMESSAGE',
response: '553 Relaying disallowed as email@gmail.com',
responseCode: 553,
command: 'DATA'
}
email@gmail.com - это адрес электронной почты пользователя, который пытается связаться со мной, например JohnDoe@gmail.com, et c. Я также использую Zoho.
Вот мой код:
var transport = {
host: "smtp.zoho.eu",
port: 465,
secure: true,
auth: {
user: creds.USER, // I have a separate file with my email and password
pass: creds.PASS, // I have a separate file with my email and password
},
};
var transporter = nodemailer.createTransport(transport);
router.post("/send", (req, res, next) => {
const { error } = contactValidation(req.body); // Just a separate function to validate If the user has submitted all entries using Joi
if (error) return res.send(error.details[0].message);
var name = req.body.name;
var email = req.body.emailc;
var message = req.body.message;
var content = `name: ${name} \n email: ${email} \n message: ${message} `;
var mail = {
from: email,
to: "myEmail@email.com",
subject: "New Message from Contact Form",
text: content,
};
transporter.sendMail(mail, (err, data) => {
if (err)
console.log(err);
res.json({
status: "fail",
});
} else {
res.json({
status: "success",
});
transporter.sendMail(
{
from: "myEmail@email.com",
to: email,
subject: "Submission was successful",
text:
"Thank you for contacting us! We appreciate your feedback and will strive to get better!",
},
function (error, info) {
if (error) {
console.error(error);
} else {
console.log("Message sent: " + info.response);
}
}
);
}
});
});
Я не знаю, в чем причина этой ошибки.
Я пробовал:
- Обновление моих записей Zoho DNS с помощью Zeit (теперь Vercel, я использую это для хостинга своего веб-сайта)
- Добавление записей DKIM в мою электронную почту
Я также не знаю, что означает эта ошибка. Если кто может помочь, буду признателен! Заранее спасибо.