me autentico con pasaporte js con éxito, pero nodemailer solo envía correos electrónicos con un correo electrónico que es el que se usa en console.cloud.google.
cuando pruebo con otras cuentas de gmail, me sale este error:
Error: inicio de sesión no válido: 535-5.7.8 Nombre de usuario y contraseña no aceptados. Obtenga más información en 535 5.7.8 https://support.google.com/mail/?p=BadCredentials u6sm13346885wrp.0 - gsmtp en SMTPConnection._formatError (/var/www/html/Recrute/node_modules/nodemailer/lib/smtp- connection/index.js:784:19) en SMTPConnection._actionAUTHComplete (/var/www/html/Recrute/node_modules/nodemailer/lib/smtp-connection/index.js:1536:34) en SMTPConnection. (/var/www/html/Recrute/node_modules/nodemailer/lib/smtp-connection/index.js:1515:26) en SMTPConnection._processResponse (/var/www/html/Recrute/node_modules/nodemailer/lib/smtp- connection/index.js:947:20) en SMTPConnection._onData (/var/www/html/Recrute/node_modules/nodemailer/lib/smtp-connection/index.js:749:14) en TLSSocket.SMTPConnection._onSocketData (/ var/www/html/Recrute/node_modules/nodemailer/lib/smtp-connection/index.js:189:44) en TLSSocket.emit (events.js:376:20) en addChunk (interno/streams/readable.js: 309:12) en readableAddChunk (internal/streams/readable.js:284:9) en TLSSocket.Readable.push (internal/streams/readable.js:223:10) { código: 'EAUTH', respuesta: '535- 5.7.8 Nombre de usuario y contraseña no aceptados. Obtenga más información en\n' + '535 5.7.8 https://support.google.com/mail/?p=BadCredentials u6sm13346885wrp.0 - gsmtp', código de respuesta: 535, comando: 'AUTH XOAUTH2' }
Agregué todos los correos electrónicos para probar a los usuarios.
el código
type: 'oauth2', user: req.user.email, clientId: clientId, clientSecret: clientSecret, refreshToken: refreshToken, }; var mailOptions = { from: req.user.email, to: 'email@gmail.com', subject: req.query.sbjct, text: req.query.msg, html: req.query.msg, }; var transporter = nodemailer.createTransport({ service: 'gmail', auth: auth, }); transporter.sendMail(mailOptions, (err, res) => { if (err) { return console.log(err); } else { res.send('done !'); } ```Gmail no permite por completo el envío de correos electrónicos desde aplicaciones de terceros. Entonces, para que pueda enviar correos electrónicos desde una aplicación de terceros (como su aplicación que usa nodemailer), debe ir a la configuración de esa cuenta de Gmail y reducir la seguridad de Gmail para esa cuenta [menos segura] [1]. documentos de nodemailer
y su createTransport debería verse así
let transporter = nodemailer.createTransport({ host: "smtp.gmail.email", port: 587, secure: false, // true for 465, false for other ports auth: { user: your username, // generated gmail user pass: your password, // generated gmail password }, });