I'm trying to send the email gmail smtp but I'm getting the error:
My email and password is correct I'm using the nodemailer for sending the mail;
var nodemailer = require('nodemailer'); // create reusable transporter object using SMTP transport var transporter = nodemailer.createTransport({ service: 'Gmail', auth: { admin: 'myuseremail.com', pass: 'password' } }); var mailOptions = { from: 'sender address', // sender address to: to, // list of receivers subject: 'Password Reset', // Subject line html: 'Your one time password is : <b>' + temporaryPassword + ' </b>' // html body }; transporter.sendMail(mailOptions, function (error, info) { console.log(error,info); }
in log i'm getting the error:
{ [Error: Invalid login] code: 'EAUTH', response: '535-5.7.8 Username and Password not accepted. Learn more at\n535 5.7.8 https://support.google.com/mail/answer/14257 k5sm20957041pdo.48 - gsmtp', responseCode: 535 }
I try some link but that doesn't work:
https://laracasts.com/discuss/channels/general-discussion/help-email-doesnt-get-sent-with-gmail-smtp
In Google Mail, you must allow "less secure" apps access in order for your SMTP settings to work. There are two places this setting must be enabled: The first is here: https://myaccount.google.com/ under “Connected apps & sites.”
Does the Gmail SMTP Server Still Work With Two-Factor Authentication? Yes! You can use the SMTP server even if you've enabled two-factor authentication on your Google account. However, you will need to generate an app password so that the app can still connect.
var transporter = nodemailer.createTransport({ service: 'Gmail', auth: { user: '[email protected]', pass: 'password' } });
Try the above, and do the following which worked for me.
Login to https://www.google.com/settings/security/lesssecureapps and TURN ON Access for less secure apps.
I hope it will work for you too.
Thank you.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With