Maison >interface Web >js tutoriel >Implémentation de la messagerie nodemailer basée sur Node.js_node.js
Nodemailer est un composant d'envoi d'e-mails Node.js simple et facile à utiliser. Les opérations spécifiques sont les suivantes
1. Installer nodemailer
npm install nodemailer --save
2. Caractéristiques
Les principales fonctionnalités de Nodemailer incluent :
Les fonctionnalités fonctionnelles ci-dessus ont couvert la plupart des besoins en matière d'envoi d'e-mails. Ensuite, commençons à écrire le programme.
3. Exemple simple
Ceci est un exemple complet pour envoyer un e-mail avec du texte clair et un corps HTML
var nodemailer = require('nodemailer'); // create reusable transporter object using the default SMTP transport var transporter = nodemailer.createTransport('smtps://user%40gmail.com:pass@smtp.gmail.com'); // setup e-mail data with unicode symbols var mailOptions = { from: 'Fred Foo 👥 <foo@blurdybloop.com>', // sender address to: 'bar@blurdybloop.com, baz@blurdybloop.com', // list of receivers subject: 'Hello ✔', // Subject line text: 'Hello world 🐴', // plaintext body html: '<b>Hello world 🐴</b>' // html body }; // send mail with defined transport object transporter.sendMail(mailOptions, function(error, info){ if(error){ return console.log(error); } console.log('Message sent: ' + info.response); });
4. Erreurs courantes
{ [AuthError: Invalid login - 454 Authentication failed, please open smtp flag first!] name: 'AuthError', data: '454 Authentication failed, please open smtp flag first!', stage: 'auth' }
Cause de l'erreur : Le compte n'a pas configuré ce service
Solution : Boîte aux lettres QQ -> Paramètres -> Compte -> Activer le service : service POP3/SMTP
{ [SenderError: Mail from command failed - 501 mail from address must be same as authorization user] name: 'SenderError', data: '501 mail from address must be same as authorization user', stage: 'mail' }
Cause de l'erreur : le compte d'envoi et le compte d'authentification sont différents, c'est-à-dire que le nom d'utilisateur et le mot de passe ne correspondent pas.
Ce qui précède représente l’intégralité du contenu de cet article, j’espère qu’il sera utile à l’étude de chacun.