#javascript #node.js #nodemailer #roundcube
#javascript #node.js #nodemailer #roundcube
Вопрос:
То, что я пытаюсь сделать, это отправлять электронные письма через nodemailer
библиотеку. Я считаю, что проблема заключается во времени для настройки хоста. Я попытался использовать gmail, и он работает отлично, но когда я использую своего собственного поставщика электронной почты, он возвращает эту ошибку ниже.
Ошибка аутентификации пользователя: getaddrinfo ENOTFOUND http://myserver.com «
module.exports = {
host: 'http://myserver.com',
port: '587',
user: 'email@myserver.com',
pass: 'mypassword'
}
Ответ №1:
Вам нужно удалить протокол http://
из переменной host. Вы пытаетесь выполнить DNS-запрос http://myserver.com
, а не myserver.com
.
Кроме того, почтовые службы используют не http
протокол, а smtp
( smtps
для безопасных соединений).
Другой способ: вы можете использовать однострочную строку подключения
let transporter = nodemailer.createTransport(
`smtp://email:mypassword@myserver.com:587`);
Ответ №2:
Указанный вами сервер не является допустимым доменом, т.е. Если я выполню поиск в DNS, он ни к чему не приведет.
Это наводит меня на мысль, что вы пытаетесь подключиться к почтовому серверу в своей локальной сети и изменили DNS в своем маршрутизаторе или файле hosts вашего компьютера, чтобы сопоставить локальный IP с именованным доменом. Если это так, я бы посоветовал получить фактический IP-адрес вашего локального почтового сервера и использовать его вместо этого и посмотреть, поможет ли это подключению.
Комментарии:
1. Мой DNS-сервер действителен