2015-12-18 14 views
0

У меня возникла проблема с подключением nodemailer к AuthSMTP (https://www.authsmtp.com/).NodeJS - nodemailer, использующий nodemailer-smtp-transport

var nodemailer = require('nodemailer'); 
var transOptions = { 
    host: 'mail.authsmtp.com', 
    port: 25, 
    secure: false, 
    auth: { 
     user: '...', 
     pass: '...' 
    } 
}; 
var transporter = nodemailer.createTransport(transOptions); 
var mainOptions = { 
    from: '[email protected]', 
    to: '[email protected]', 
    subject: 'hello', 
    text: 'hello world!' 
}; 
var callback = function(err, info){ 
    if (err) { throw err } 
    console.log('sent'); 
} 
transporter.sendMail(mainOptions, callback); 

Ошибка я получаю назад от AuthSMTP является:

«Ваша программа, приложение или устройство пытается использовать SSL с нашим сервис, но SSL не включен в вашем аккаунте.»

Я не хочу, чтобы включить SSL, и у меня есть secure свойство в параметрах транспортного объекта установлен в false, как говорят документы: https://github.com/andris9/nodemailer-smtp-transport#usage.

Почему AuthSMTP говорит, что я использую SSL, когда устанавливаю nodemailer, чтобы не использовать SSL ...?

+0

вы можете проверить, есть ли панель управления authsmtp SSL на! по умолчанию он должен быть выключен – Robus

+0

Он выключен на панели управления, поэтому сообщение об ошибке выше говорит о том, что оно не включено ... –

+0

Лучше использовать поддерживаемые службы по узловой почтовой программе, я использую то же самое с Zoho mail как SMTP и работает как шарм. список здесь https://github.com/andris9/nodemailer-wellknown#supported-services – Robus

ответ

2

вы можете попробовать это

var transOptions = { 
host: 'mail.authsmtp.com', 
port: 25, 
secure: false, 
ignoreTLS: true 
auth: { 
    user: '...', 
    pass: '...', 

} 
+1

Спасибо, я дам, что поход в понедельник, когда я буду в офисе ... –

+0

Они решают эту проблему, здесь https : //github.com/andris9/Nodemailer/commit/1995f46d7266c162c3c6b6d30767c96d962b32d4 – Robus

+0

Теперь он работает, вы были почти там ... Это было 'ignoreTLS: true' в объекте options (не под объектом' auth'). Если вы обновите свой ответ, я приму его. Ура! –

0

безопасно - если верно то соединение будет использовать TLS при подключении к серверу . Если false (по умолчанию), то TLS используется, если сервер поддерживает расширение STARTTLS .

В большинстве случаев это значение устанавливается равным true, если вы подключаетесь к порту 465. Для порта 587 или 25 держите его ложным.

ignoreTLS - если это верно и безопасно ложно, то TLS не используется , даже если сервер поддерживает расширение STARTTLS.

так, Params так:

безопасные: ложные, ignoreTLS: правда,

0

Если вы хотите быть в безопасности, я думаю, просто чтобы установить вам по электронной почте, запустить IMAP/SMTP и POP службы/SMTP, как показано ниже:

enter image description here

и добавить свой пропуск на свой ЕМА Настройки иль:

enter image description here

Смежные вопросы