#node.js #nodemailer
#node.js #nodemailer
Вопрос:
let transporter = nodemailer.createTransport({
service: "Outlook365",
host: 'smtp.office365.com',
port: 587,
tls: {
ciphers:'SSLv3'
},
auth: {
user: 'username',
pass: 'password'
}
});
У меня ошибка EAUTH при отправке электронной почты, пожалуйста, проверьте изображение на наличие ошибки.
[1]: https://i.stack.imgur.com/snt3T.jpg
Комментарии:
1. Вы пытались сохранить только
"service"
"auth"
ключи и?
Ответ №1:
Этот код должен делать то, что вы хотите, вам нужно будет установить свой пароль, чтобы проверить это.
Если пароль неверный, вы получите сообщение об ошибке:
Ошибка: неверный вход в систему: 535 5.7.3 Сообщение об ошибке аутентификации.
const nodemailer = require('nodemailer');
// Set this from config or environment variable.
const PASSWORD = '....';
async function send365Email(from, to, subject, html, text) {
try {
const transportOptions = {
host: 'smtp.office365.com',
port: '587',
auth: { user: from, pass: PASSWORD },
secureConnection: true,
tls: { ciphers: 'SSLv3' }
};
const mailTransport = nodemailer.createTransport(transportOptions);
await mailTransport.sendMail({
from,
to,
replyTo: from,
subject,
html,
text
});
} catch (err) {
console.error(`send365Email: An error occurred:`, err);
}
}
send365Email("from@example.com", "to@example.com", "Subject", "<i>Hello World</i>", "Hello World");
Ответ №2:
Вам нужно будет отключить SmtpClientAuthenticationDisabled через сетевую командную оболочку с помощью команды
Set-TransportConfig -SmtpClientAuthenticationDisabled $false
Дополнительные сведения можно найти в разделе Включение или отключение отправки SMTP-сообщений с проверкой подлинности клиента (SMTP AUTH) в Exchange Online
Ответ №3:
Подробную информацию вы можете найти здесь: