2014-11-03 17 views
3

Я хотел бы отправить электронную почту с помощью Nodemailer и GMAIL, но это не работает ...Nodemailer и Gmail

Edit # 1:

Код:

var transporter = nodemailer.createTransport(smtpPool({ 
 
    service: 'gmail', 
 
    auth: { 
 
    user: '***@gmail.com', 
 
    pass: '***' 
 
    }, 
 
    maxConnections: 5, 
 
    maxMessages: 10 
 
})); 
 

 
var mailOptions = { 
 
    from: mail, // sender address 
 
    to: '[email protected]', 
 
    subject: subject, 
 
    text: message, 
 
    html: message 
 
}; 
 

 
transporter.sendMail(mailOptions, function(error, info){ 
 
    if(error){ 
 
    console.log(error); 
 
    }else{ 
 
    request.flash('success', 'Votre message à bien été envoyé.'); 
 
    response.redirect('/contacter-printwithlove'); 
 
    } 
 
});

Ошибка:

{ [Error: Invalid login] 
    code: 'EAUTH', 

кажется, что пароль неверен, но в сети Gmail интерфейс мой пароль отлично работает ...

EDIT # 2:

enter image description here

+0

См. Мой отредактированный ответ, чтобы включить var smtpPool = require ('nodemailer-smtp-pool'); – Ben

+0

Уже включен в мой код, но не в сообщении ... – tonymx227

ответ

2

Вам нужно pass in service = 'gmail' и пользователь/пароль:

var transporter = nodemailer.createTransport({ 
    service: 'Gmail', 
    auth: { 
    user: '[email protected]', 
    pass: <your password> 
    } 
}); 

// Or using SMTP Pool if you need to send a large amount of emails 
var smtpPool = require('nodemailer-smtp-pool'); 
var transporter = nodemailer.createTransport(smtpPool({ 
    service: 'gmail', 
    auth: { 
    user: '[email protected]', 
    pass: <your password> 
    }, 
    maxConnections: 5, 
    maxMessages: 10 
})); 

Редактировать:

Возможно, вам потребуется «Разрешить доступ к вашей учетной записи Google». Войдите в свой gmail, используя браузер, а затем перейдите по этой ссылке https://accounts.google.com/DisplayUnlockCaptcha, чтобы разблокировать его. Возможно, вам придется использовать тот же браузер, который вы только что вошли в систему, чтобы Google знал, какую учетную запись вы хотите предоставить. После нажатия кнопки «Разрешить» вы должны увидеть сообщение: «Доступ к учетной записи включен. Повторите попытку входа в свою учетную запись Google с нового устройства или приложения».

+0

Не работает с вашим кодом, см. Выше ... – tonymx227

+0

Странно, я в настоящее время использую оба метода выше для наших серверов, и оба работают для нас , – Ben

+0

Хорошо, я не понимаю, почему пароль не работает ... Это истинный пароль ... – tonymx227

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