nodemailer

Online Python-Trainer für Anfänger

Lernen Sie Python einfach ohne theoretische Überlastung. Lösen Sie praktische Aufgaben mit automatischer Überprüfung und schreiben Sie Code direkt im Browser.

Kurs starten

Die Bibliothek nodemailer zum Versenden von E-Mails mit TypeScript

nodemailer ist eine leistungsstarke und beliebte Bibliothek für Node.js, die in TypeScript geschrieben ist und das einfache Versenden von E-Mails aus Serveranwendungen ermöglicht. Sie unterstützt alle modernen Protokolle (SMTP, SES, Sendmail) und E-Mail-Formate (HTML, Text, Anhänge).

Wofür wird nodemailer benötigt?

In der Webentwicklung ist es oft erforderlich, Benachrichtigungen, Registrierungsbestätigungen, Passwort-Zurücksetzungen oder Marketing-Newsletter zu versenden. nodemailer löst diese Aufgabe, indem es eine einfache und flexible API für die Arbeit mit Mailservern bereitstellt. Dank der TypeScript-Typisierung wird der Code zuverlässiger und vorhersagbarer.

Installation

Installieren Sie das Paket über npm oder yarn:

npm install nodemailernpm install -D @types/nodemailer

Für TypeScript müssen Sie unbedingt das Paket mit den Typen installieren.

Hauptfunktionen

  • SMTP-Unterstützung — Arbeit mit jedem SMTP-Server (Gmail, Yandex, Mailgun, SendGrid).
  • HTML- und Text-E-Mails — Sie können sowohl einfachen Text als auch formatierte HTML-Nachrichten versenden.
  • Anhänge — Unterstützung für Dateien, Bilder und Inline-Anhänge.
  • Streams — Möglichkeit, große Dateien über Streams zu versenden.
  • Sicherheit — Unterstützung für TLS/SSL, OAuth2.
  • Verbindungspool — Optimierung für den Massenversand.

Codebeispiel in TypeScript

Ein einfaches Beispiel zum Versenden einer E-Mail über Gmail SMTP:

import nodemailer from 'nodemailer';

async function sendEmail() { const transporter = nodemailer.createTransport({ host: 'smtp.gmail.com', port: 587, secure: false, // true für 465 auth: { user: 'your-email@gmail.com', pass: 'your-password', }, });

const info = await transporter.sendMail({ from: '"Sender Name" <your-email@gmail.com>', to: 'recipient@example.com', subject: 'Hallo aus TypeScript!', text: 'Dies ist der E-Mail-Text.', html: '<b>Dies ist eine HTML-E-Mail</b>', });

console.log('E-Mail gesendet:', info.messageId);}

sendEmail().catch(console.error);

Wann nodemailer verwenden

Die Bibliothek ist ideal geeignet für:

  • Backend-Anwendungen auf Node.js/Express/NestJS.
  • Automatische Benachrichtigungen (Registrierung, Bestellungen, Fehler).
  • Bestätigung von E-Mail-Adressen.
  • Versand von Transaktions-E-Mails.
  • Integration mit beliebigen SMTP-Anbietern.

Wenn Sie E-Mails mit Anhängen, HTML-Vorlagen oder über externe Dienste (SendGrid, Mailgun) versenden müssen, ist nodemailer der De-facto-Standard im Node.js-Ökosystem.

Wichtig: Verwenden Sie für die Produktion Umgebungsvariablen zum Speichern von Passwörtern und zur Konfiguration von OAuth2, um keine Anmeldedaten im Code offenzulegen.

Empfehlungen