Maison> interface Web> js tutoriel> le corps du texte

Maîtriser l'envoi d'e-mails dans Node.js : un guide étape par étape

王林
Libérer: 2024-08-28 06:11:02
original
199 Les gens l'ont consulté

Mastering Email Sending in Node.js: A Step-by-Step Guide

L'envoi d'e-mails est une fonctionnalité courante dans de nombreuses applications Web, qu'il s'agisse de l'enregistrement d'utilisateurs, de la réinitialisation de mots de passe ou de campagnes marketing. Dans ce guide, nous allons vous montrer comment envoyer des e-mails à l'aide de Node.js à l'aide du module NodeMailer. Nous couvrirons tout, de la configuration de votre projet à l'envoi d'e-mails HTML et à la gestion des pièces jointes.


1. Premiers pas avec votre projet de messagerie Node.js

Tout d'abord, vous devrez configurer un nouveau projet Node.js pour l'envoi d'e-mails.

  • Créer un dossier de projet
mkdir emailtest cd emailtest
Copier après la connexion
  • Initialisez votre projetCréez un fichier package.json avec le contenu suivant :
{ "name": "emailtest", "version": "1.0.0", "main": "index.js", "dependencies": { "nodemailer": "^6.0.0" } }
Copier après la connexion
  • Installer NodeMailerInstallez le module NodeMailer requis en exécutant :
npm install
Copier après la connexion

2. Envoi de votre premier e-mail

Maintenant que votre projet est configuré, envoyons un simple email.

  • Créez un fichier index.jsAjoutez le code suivant pour envoyer un e-mail :
import nodemailer from 'nodemailer'; const transporter = nodemailer.createTransport({ host: 'smtp.freesmtpservers.com', port: 25 }); const mailOptions = { from: '"Test Email" ', to: 'someone@example.com', subject: 'Hello!', text: 'Hello world!', html: '

Hello world!

' }; transporter.sendMail(mailOptions, (error, info) => { if (error) { console.log('Error:', error); } else { console.log('Email sent:', info.response); } });
Copier après la connexion
  • Exécutez votre codeExécutez le code à l'aide de Node.js :
node index.js
Copier après la connexion

Vous devriez voir une confirmation que l'e-mail a été envoyé.


3. Ajouter des pièces jointes à votre e-mail

Si vous devez envoyer des fichiers avec votre e-mail, NodeMailer vous facilite la tâche.

  • Exemple avec pièces jointes
const mailOptions = { from: '"Test Email" ', to: 'someone@example.com', subject: 'Hello with Attachments!', text: 'Please find the attached files.', attachments: [ { filename: 'test.txt', path: './test.txt' // Local file }, { filename: 'example.txt', content: 'This is a text file content.' // Content as string } ] };
Copier après la connexion

4. Envoi d'e-mails HTML

Les e-mails HTML peuvent rendre vos messages plus attrayants grâce au formatage, aux images et aux liens.

  • Exemple d'e-mail HTML
const mailOptions = { from: '"Test Email" ', to: 'someone@example.com', subject: 'Hello, HTML!', html: '

Hello world!

This is an HTML email.

' };
Copier après la connexion

5. Gestion des erreurs

Il est important de gérer les erreurs pour garantir le bon fonctionnement de votre application.

  • Exemple de gestion des erreurs
transporter.sendMail(mailOptions, (error, info) => { if (error) { console.log('Error:', error.message); } else { console.log('Email sent:', info.response); } });
Copier après la connexion

Conclusion

L'envoi d'e-mails à l'aide de Node.js et NodeMailer est simple. Avec seulement quelques lignes de code, vous pouvez envoyer des e-mails en texte brut ou HTML, joindre des fichiers et gérer efficacement les erreurs. À mesure que vos besoins évoluent, vous pouvez explorer des fonctionnalités plus avancées telles que l'intégration à des services de messagerie dédiés et la gestion des files d'attente de messagerie asynchrones.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!