Enviar correo con Nodemailer

Juan Carlos G2020-01-17

Hey viajero web ya estas en EWebik, y hoy mejoraremos nuestra página web que hemos venido creando en los vídeos y clases anteriores, vamos a mejorar nuestra primera página web con NodeJS, agregándole una área de contacto para que nuestros usuarios y clientes puedan comunicarse con nosotros directamente desde nuestra página web, recuerda que esta página que veras en el vídeo viene desde esta otra clase ¿Cómo crear una página web responsiva con Bootstrap?, así que no te puedes perder ningún vídeo y por favor compártelo para que pueda seguir subiendo mas vídeos a YouTube.

 

📌 Suscríbete a mi canal y activa la campanita para que no te pierdas ningún video 🤘

 

¿Que aprenderás además de Nodemailer?

Esta es una clase muy importante ya que le da ese toque profesional a una página web, pero sobre todo aumenta la confianza de tus usuarios ya que al tener un medio de comunicación con los que están detrás de un sitio web, disminuye esa frialdad y aumentan las posibilidades de cerrar una venta, aquí te dejo lo que aprenderás ene este vídeo.

  • Aprende a crear un formulario en Bootstrap
  • Enviar solicitudes POST a un entorno NodeJS con express
  • Utilizaremos la librería AXIOS con la cual realizaremos los request al servidor NodeJS
  • Estableceremos la lógica con la cual se atienen los request o solicitudes de los clientes
  • Configuración y utilización de Nodemailer SMPT para el envio de correos en NodeJS
  • Manejo de promesas en Javascript, lo cual es muy importante si quieres aprender NodeJS
  • Manejo de clases en NodeJS

Como puedes observar en este vídeo aprenderás aspectos fundamentales de una página web y convertirá tu página en una herramienta poderosa de captura de leads para tus próximas campañas de marketing.

 

 

Multiples HTML / Rutas con HTML Web Pack Plugin

Multiples HTML / Rutas con HTML Web Pack Plugin...

Código disponible y Vídeo - Crea una página web co...

NodeJS en español

NodeJS en español...

Curso gratuito de NodeJS en español, aprende todo ...

Conexión de MySQL con Node JS

Conexión de MySQL con Node JS...

Esta es la manera mas sencilla de 【 conectar Node ...

Enviar correo con Nodemailer

Enviar correo con Nodemailer...

En esta clase 🥇 《 aprenderás a crear un área de c...

XLSX, Convirtiendo un archivo Excel a JSON con Node JS

XLSX, Convirtiendo un archivo Excel a JSON con Nod...

Para ▶ convertir un archivo Excel a Node JS ◀ exis...

 

¿Cómo hacer una pagina web?

¿Cómo hacer una pagina web?...

Si estas buscando 《 como crear una página web 》 🤔...

Página Web con NodeJS desde cero

Página Web con NodeJS desde cero...

Hoy aprenderás de una manera práctica 😁 《 como de...

Curso gratis de Flexbox Online

Curso gratis de Flexbox Online...

Flexbox Online ✔️ Aprende y practica 【 Flexbox 】 d...

Crear tu Pagina Web en HTML con Bootstrap

Crear tu Pagina Web en HTML con Bootstrap...

Has has intentado 《 crear una página web 》 ✅ y aun...

Instalar XAMPP en Windows

Instalar XAMPP en Windows...

《 Instala XAMPP localmente 》 en tu computadora o s...

 

¿Que necesito para usar Nodemailer?

Si has visto todos los vídeos ya tendrás instaladas todas las herramientas e incluso estoy seguro tienes ya tu página web creada, pero si no los tienes solo descarga he instala Visual Studio Code o cualquier otro editor de código que sea de tu agrado. 

Si no tienes un correo para hacer tus practicas puedes hacerlo desde tu propio Gmail aquí te dejo este post done aprenderás a utilizar el servicio SMTP de Gmail

 

¿Que es Nodemailer?

Es un paquete de distribución de Node Js que podemos integrar a nuestro proyecto y nos permite enviar email a un servidor SMTP en formato texto o HTML, entre otras funcionalidades que veremos mas adelante.

 

¿Cómo enviar un correo con Nodemailer?

Aquí te dejo un pequeño resumen de como puedes enviar un correo o email en Node JS utilizando la paquetería de Nodemailer.

 

npm i nodemailer

 Para poder enviar corres desde NodeJS debes instalar en tu proyecto la paquetería Nodemailer y lo puedes hacer ingresando a la carpeta de tu proyecto desde la terminal de comandos y escribir el siguiente comando npm

npm i nodemailer

Con lo cual ya podrás hacer uso del envió de correos.

 

Configuración de Nodemailer

Aquí tienes la configuración básica que debes considera al memento de enviar un correo electrónico con Nodemailer y lo haré creando un objeto JSON con los parámetros que solicita esta paquetería.

 

let jConfig = {
        "host":"tu-host", 
       "port":"el-puerto", 
       "secure":false, 
      "auth":{ 
              "type":"login", 
              "user":"tu-correo@ewebik.com.mx", 
             "pass":"tu-password" 
   }
};

 

Donde:

  • host, hace referencia al nombre o IP de tu servidor SMTP
  • port, puerto asignado por el servidor SMTP para el envió de correos
  • secure, esto se entiende mejor de la siguiente manera si usas https su valor debe ser true, de lo contrario false
  • auth, es un JSON con los datos de autentificación  al servidor SMTP
  • type, escribe login para acceder al servidor SMTP
  • user, usuario registrado
  • pass, contraseña del usuario registrado

Como ves son datos simples y que tu administrador de sistemas puede proporcionarte en caso de que no los tengas a la mano.

 

Enviar correo con Nodemailer en NodeJS

Primero definamos el JSON de datos que se debe crear para establecer la comunicación con el servidor de correos, en donde se incluyen los datos de los destinatarios, asunto, mensaje, etc., y lo haremos de la siguiente manera.

 

let email ={ 
       from:"ewebik@ewebik.com.mx",  //remitente
       to:"contacto@ewebik.com.mx",  //destinatario
       subject:"Nuevo mensaje de usuario",  //asunto del correo
       html:` 
           <div> 
           <p>Hola amigo</p> 
           <p>Esto es una prueba del vídeo</p> 
           <p>¿Cómo enviar correos eletrónicos con Nodemailer en NodeJS </p> 
           </div> 
       ` 
   };

 

Donde:

  • from, es el correo origen o el correo que esta enviando el email
  • to, el destinatario quien debe recibir el correo
  • subject, asunto del correo
  • html, Nodemailer nos permite enviar un mensaje codificado en lenguaje HTML lo cual es muy útil en campañas de marketin

 

Objeto createTransport de Nodemailer

Ahora que tienes definido la configuración a utilizar y los datos del correo a enviar lo primero que debes hacer es crear un objeto transportador a través del siguiente método "createTransport".

 

let createTransport = nodemailer.createTransport(jConfig);

 

Este objeto crea una variable de transporte que se comunicara con el servidor SMTP y enviará el correo, por ejemplo:

 

createTransport.sendMail(email, function (error, info) { 
              if(error){ 
                   console.log("Error al enviar email"); 
              } else{ 
                   console.log("Correo enviado correctamente"); 
              } 
              createTransport.close(); 
});

 

Este pedazo de código es muy fácil de leer, lo que indica es que el objeto createTransport cuenta con un método de nombre sendMail el cual recibe como parámetros los datos del correo que se quiere enviar y regresa un callback o función que proporciona un argumento error el cual nos indica si el correo fue enviado o si no fue enviado nos da un pequeño mensaje con el error.

Listo así de fácil puedes enviar un correo en Node JS, te recomiendo que veas el vídeo ya que es un caso practico con el objetivo de que al final tengas una página web funcional a partir de todos estos conceptos.

 

Dominios virtuales, ¿Dónde comprar el dominio para mi página web?

Dominios virtuales, ¿Dónde comprar el dominio para...

No solo aprenderás qué son los dominios virtuales,...

Configuración del servidor SMTP de GMAIL

Configuración del servidor SMTP de GMAIL...

No tienes para pagar un correo empresarial 😭, NO ...

¿Qué es la Web?

¿Qué es la Web?...

Para hablar de Web debemos comprender que no es lo...

¿Qué son y para que sirven los servidores?

¿Qué son y para que sirven los servidores?...

En esta sección aprenderás desde como montar un se...

Servidores Web, tipos y sus características

Servidores Web, tipos y sus características...

Que no te confundan, aprende 《 ¿Qué son los servid...

¿Cómo instalar un certificado SSL gratuito?

¿Cómo instalar un certificado SSL gratuito?...

Certificado SSL gratis, brinda a tus usuarios segu...

¿Qué es  World Wide Web?  y ¿Qué significa WWW?

¿Qué es World Wide Web? y ¿Qué significa WWW?...

Todos los días navegas en páginas que inician con ...

¿Qué significa HTTP?

¿Qué significa HTTP?...

¿Sabes cual es la historia del HTTP? y ¿Por qué to...

 


Juan Carlos G

Electrónica y diseño web

Durante años he desarrollado plataformas dedicadas al rastreo satelital y varios sitios web que se encuentran en la primera página de Google, y hoy quiero compartir contigo lo que se en tecnologías como Node JS, PHP, C# y Bases de datos, si quieres apoyarme sígueme en mis redes sociales y suscríbete a mi canal de YouTube.

Puedes seguirme en mis redes