it-swarm.com.ru

Не удается подключиться к SMTP Outlook.com с помощью Nodemailer

Я создаю транспортный объект, как это.

var transport = nodemailer.createTransport("SMTP", {
        Host: "smtp-mail.Outlook.com", // hostname
        secureConnection: false, // use SSL
        port: 587, // port for secure SMTP
        auth: {
            user: "[email protected]",
            pass: "password"
        }
    });

Это ошибка, которую я получаю, когда пытаюсь отправить письмо.

[Ошибка: 139668100495168: ошибка: 1408F10B: SSL подпрограммы: SSL3_GET_RECORD: неправильная версия номер: ../ deps/openssl/openssl/ssl/s3_pkt.c: 337:]

Когда я попытался установить ignoreTLS как true. Это то, что я получаю

{[AuthError: Неверный логин - 530 5.7.0 Необходимо выполнить команду STARTTLS first] name: 'AuthError', data: '530 5.7.0 Должен выдать STARTTLS команда первая '}

Я делаю что-то неправильно? Пожалуйста помоги.

12
Jeevan

У меня была та же проблема, пока я не наткнулся на https://github.com/andris9/Nodemailer/issues/165

Попробуйте добавить параметр шифрования tls, чтобы использовать SSLv3.

var transport = nodemailer.createTransport("SMTP", {
    Host: "smtp-mail.Outlook.com", // hostname
    secureConnection: false, // TLS requires secureConnection to be false
    port: 587, // port for secure SMTP
    auth: {
        user: "[email protected]",
        pass: "password"
    },
    tls: {
        ciphers:'SSLv3'
    }
});

Кроме того, для Hotmail/Live/Outlook вы можете просто использовать

var transport = nodemailer.createTransport("SMTP", {
    service: "hotmail",
    auth: {
        user: "[email protected]",
        pass: "password"
    }
});
23
Ray L

Если вы используете Nodemailer 1.x или выше, вы можете использовать:

var transporter = nodemailer.createTransport('smtp://username%40Outlook.com:[email protected]');
0
Richie_b