nodejs node mail ethereal enviar correo node.js email-integration

mail - ¿Enviando correos electrónicos en Node.js?



send email node.js express (11)

Código completo para enviar correo electrónico usando el módulo nodemailer

var mailer = require("nodemailer"); // Use Smtp Protocol to send Email var smtpTransport = mailer.createTransport("SMTP",{ service: "Gmail", auth: { user: "[email protected]", pass: "gmail_password" } }); var mail = { from: "Yashwant Chavan <[email protected]>", to: "[email protected]", subject: "Send Email Using Node.js", text: "Node.js New world for me", html: "<b>Node.js New world for me</b>" } smtpTransport.sendMail(mail, function(error, response){ if(error){ console.log(error); }else{ console.log("Message sent: " + response.message); } smtpTransport.close(); });

Recientemente comencé a programar mi primer node.js. Sin embargo, descubrí que no puedo crear un formulario de contacto que se envíe directamente a mi correo electrónico, ya que no puedo encontrar ningún módulo desde el nodo que pueda enviar correos electrónicos.

¿Alguien sabe de una biblioteca de correo electrónico node.js o un script de formulario de contacto de muestra?



Echa un vistazo a emailjs

Después de perder mucho tiempo tratando de hacer funcionar el nodemailer con archivos adjuntos grandes, encontré emailjs y feliz desde entonces.

Admite el envío de archivos mediante el uso de objetos de archivo normales, y no de grandes buffers como requiere nodemailer. Significa que puede vincularlo a, fe, formidable para pasar los archivos adjuntos de un formulario html al remitente. También soporta colas.

Con todo, no tengo idea de por qué nodejitsu ppl eligió a nodemailer para basar su versión, emailjs es mucho más avanzado.



La respuesta aceptada de @JimBastard parece estar fechada, tuve un vistazo y esa liberación de correo no se ha tocado en más de 7 meses, tiene varios errores en la lista y ya no está registrado en npm.

nodemailer ciertamente parece ser la mejor opción, sin embargo, la URL proporcionada en otras respuestas en este hilo son todas de 404.

nodemailer afirma que admite complementos fáciles en gmail, hotmail, etc. y también tiene una documentación realmente hermosa.



Nodemailer es básicamente un módulo que le brinda la capacidad de enviar correos electrónicos fácilmente cuando programa en Node.js. Hay algunos buenos ejemplos de cómo usar el módulo Nodemailer en nodemailer.com . Las instrucciones completas sobre cómo instalar y usar la funcionalidad básica de Nodemailer se incluyen en este enlace.

Personalmente tuve problemas para instalar Nodemailer usando npm, por lo que acabo de descargar la fuente. Hay instrucciones para la instalación y descarga de npm de la fuente.

Este es un módulo muy simple de usar y lo recomendaría a cualquiera que quiera enviar correos electrónicos usando Node.js. ¡Buena suerte!


Siempre se podría usar AlphaMail ( divulgación: soy uno de los desarrolladores detrás de esto ).

Simplemente instale con NPM :

npm install alphamail

Regístrese para obtener una cuenta de AlphaMail. Obtenga un token y luego puede comenzar a enviar con el servicio AlphaMail.

var alphamail = require(''alphamail''); var emailService = new alphamail.EmailService() .setServiceUrl(''http://api.amail.io/v1/'') .setApiToken(''YOUR-ACCOUNT-API-TOKEN-HERE''); var person = { id: 1234, userName: "jdoe75", name: { first: "John", last: "Doe" }, dateOfBirth: 1975 }; emailService.queue(new alphamail.EmailMessagePayload() .setProjectId(12345) // ID of your AlphaMail project (determines template, options, etc) .setSender(new alphamail.EmailContact("Sender Company Name", "[email protected]")) .setReceiver(new alphamail.EmailContact("John Doe", "[email protected]")) .setBodyObject(person) // Any serializable object );

Y en el AlphaMail GUI ( Dashboard ) podrás editar la plantilla con los datos que enviaste:

<html> <body> <b>Name:</b> <# payload.name.last " " payload.name.first #><br> <b>Date of Birth:</b> <# payload.dateOfBirth #><br> <# if (payload.id != null) { #> <a href="http://company.com/sign-up">Sign Up Free!</a> <# } else { #> <a href="http://company.com/login?username=<# urlencode(payload.userName) #>">Sign In</a> <# } #> </body> </html>

Las plantillas están escritas en Comlang , es un lenguaje de plantilla simple diseñado específicamente para correos electrónicos.



campaign es una solución integral para enviar correos electrónicos en Node, y viene con una API muy simple.

Lo instales así.

var client = require(''campaign'')({ from: ''[email protected]'' });

Para enviar correos electrónicos, puede usar Mandrill , que es gratuito e increíble. Solo configura tu clave API, así:

process.env.MANDRILL_APIKEY = ''<your api key>'';

(Si desea enviar correos electrónicos utilizando otro proveedor, verifique los documentos)

Luego, cuando quieras enviar un correo electrónico, puedes hacerlo así:

client.sendString(''<p>{{something}}</p>'', { to: [''[email protected]'', ''[email protected]''], subject: ''Some Subject'', preview'': ''The first line'', something: ''this is what replaces that thing in the template'' }, done);

El repositorio de GitHub tiene campaign .