Inviare email con Node.js

Mattepuffo's logo
Inviare email con Node.js

Inviare email con Node.js

Inviare email in Node.js è abbastanza semplice usando il modulo nodemailer!

Cominciamo con package.json:

{
    "name": "TestEmail",
    "version": "1.0.0",
    "keywords": [],
    "author": "Mattepuffo",
    "contributors": [],
    "dependencies": {
        "nodemailer": "*"
    }
}

Questo invece il file main.js:

var nodemailer = require('nodemailer');

var transporter = nodemailer.createTransport({
    service: 'gmail',
    auth: {
        user: 'tua_email@gmail.com',
        pass: 'tua_password'
    }
});

var mailOptions = {
    from: 'tua_email@gmail.com',
    to: 'email_1@hotmail.it, email_2@yahoo.it',
    subject: 'Test Nodemailer',
    text: 'Ciao da Node.js!'
    // html: ''
};

transporter.sendMail(mailOptions, function (error, info) {
    if (error) {
        console.log(error);
    } else {
        console.log('Email sent: ' + info.response);
    }
}); 

Come servie abbiamo impostato Gmail, ma potete usare quello che volete.

Sotto mandiamo l'email a due contatti (basta separarli con una virgola).

L'email in questo caso è di testo semplice, ma potete usare html al posto di text.

A questo punto avviamo il programma:

$ cd tuo_progetto/
$ npm install
$ node main.js

Controllate eventuali errori sul terminale; se non ci sono, controllate che le email siano arrivate!

Enjoy!


Condividi

1 Commenti

  • moreno

    Ciao Matteo mi presento innanzi tutto. Mi chiamo Moreno, ho 68 anni e abito a Rovigo. Sono pensionato e appassionato da sempre di programmazione. Sto dedicando ora il mio tempo a gestire per la parrocchia e altre orginizzazioni non profit delle web application a fine di volontariato. Sto realizzando una web application SpA utilizzando Angular come frontend e Nodejs come backend. Effettuando la fase di signup, ho la necessità di inviare una mail all'utente per confermare la registrazione. Mi sono imbattuto in un problema nell'invio della mail che non riesco a superare. Ho trovato un progetto di prova in rete e, testandolo in Postman, ho degli errori apparentemente inspiegabili. Volevo chiederti se, inviandoti il progetto di test potessi riuscire a capire dove sbaglio. Ti ringrazio e ripeto che sto svolgendo a titolo gratuito questa attività e mi permetto pertanto di chiederti un piccolo aiuto per aiutarmi a uscire dal problema.. Ho controllato e il tuo codice mi sembra in linea con il mio.

    16/11/2021

Commentami!