es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo enviar correos electrónicos usando SMTP Node Mailer

Pregunta

Estaba intentando enviar un correo electrónico de prueba utilizando SMTP en el nodemailer de node, pero dice que la conexión se agotó. El fragmento que estaba utilizando se muestra a continuación.

const nodemailer = require("nodemailer");

async function main() {

  const nodemailer = require('nodemailer');
  let transporter = nodemailer.createTransport({
        pool:true,
         host: '213.55.96.132',
         port: 25,
         auth: {
             user: "user@ethionet.et",
             pass: "drafgthsjaid321##"
         },
         pool: true,
         logger :true,
         debug:true,
         secure: false,
 })
  transporter.verify(function(error, success) {
    if (error) {
         console.log(error);
    } else {
         console.log('El servidor está listo para recibir nuestros mensajes');
    }
 });
 let mailOptions = {
    from: "user@ethionet.et",
    to: ["someemail@gmail.com",],
    subject: 'Correo electrónico de prueba',
    text: `Hola mundo`
  };
  transporter.sendMail(mailOptions, function(err, data) {
if (err) {
    console.log("Error " + err);
} else {
    console.log("Correo electrónico enviado exitosamente");
}
  });

}


main().catch(console.error);

No me importa filtrar las credenciales y funciona cuando intento enviar correos electrónicos a través de SMTP desde aquí. ¿Por qué falla esto?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Parece que está teniendo problemas para enviar un correo electrónico de prueba utilizando SMTP en Node Mailer. A continuación, se proporciona el fragmento que está utilizando:

    const nodemailer = require("nodemailer");
    
    async function main() {
      const nodemailer = require('nodemailer');
      let transporter = nodemailer.createTransport({
        pool:true,
        host: '213.55.96.132',
        port: 25,
        auth: {
          user: "user@ethionet.et",
          pass: "drafgthsjaid321##"
        },
        pool: true,
        logger :true,
        debug:true,
        secure: false,
      });
      transporter.verify(function(error, success) {
        if (error) {
          console.log(error);
        } else {
          console.log('Server is ready to take our messages');
        }
      });
      let mailOptions = {
        from: "user@ethionet.et",
        to: ["someemail@gmail.com",],
        subject: 'Test email',
        text: 'Hello world'
      };
      transporter.sendMail(mailOptions, function(err, data) {
        if (err) {
          console.log("Error " + err);
        } else {
          console.log("Email sent successfully");
        }
      });
    }
    
    main().catch(console.error);
    
    

    Parece que la conexión se está agotando. Usted mencionó que funciona cuando intenta enviar correos electrónicos a través de SMTP desde aquí. Podría valer la pena investigar las diferencias entre los dos métodos para ver qué puede estar causando el problema.

Comments are closed.