Node.JS + Nodemailer

Enviando e-mail SMTP com Node.JS e Nodemailer.

Utilizando a dependência Nodemailer para enviar e-mail

  • Para testar crie uma conta gmail e permita o acesso

  • Baixe o projeto no Github: Nodemailer.

  • Após fazer o clone ou baixar o projeto, execute os comandos..

  • Instalando as dependências:

	npm install
  • Executando:
	npm run app
  • Código:
	const nodemailer = require('nodemailer');
	function sendEmail() {
		return new Promise((resolve, reject) => {
			try {
			// realiza conexão
			const transporter = nodemailer.createTransport({
				host: 'smtp.gmail.com',
				secure: true, // true para 465, false para outras portas
				port: 465,
				auth: { // você deve criar uma conta gmail para autenticar
				user: 'calopsita.mail@gmail.com', // login
				pass: 'umacalopsitaesteveaqui' // senha
				},
				tls: {
					rejectUnauthorized: false
				}
			});

			// envia e-mail
			const info = transporter.sendMail({
				from: '"Calopsita 🐤" <calopsita.mail@gmail.com>', // remetente
				to: ['destinatario@dest.com.br', 'destinatario@dest.com.br'], // destinatários
				subject: 'Calopsita?!', // Assunto
				text: 'Uma calopsita esteve aqui', // Plain text body
				html: '<b>Uma calopsita esteve aqui</b>' // HTML body
			});
				resolve(info); // se tudo ok então
			} catch (error) {
				reject(error); // se der algum erro
			}
		});
	}

	// executando
	sendEmail().then((info) => {
		console.log('Mensagem enviada!');
		console.log(info.envelope);
	}).catch(error => {
		console.log('Erro: ' + error.message);
});

Caso tenha interesse em saber mais, segue o link da documentação: documentação.

Comentários