01 de outubro de 2019 • 1 min de leitura
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.