Nodemailer — E-Mail-Versand mit TypeScript

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

Was ist Nodemailer und wofür wird es benötigt?

Nodemailer ist das beliebteste Modul zum Versenden von E-Mails in der Node.js-Umgebung. Es ist in JavaScript geschrieben und funktioniert dank integrierter Typen (DefinitelyTyped) perfekt mit TypeScript. Die Bibliothek ermöglicht das Versenden von E-Mails über SMTP, Sendmail, Amazon SES und andere Transporte. In TypeScript-Projekten bietet Nodemailer eine strenge Typisierung aller Optionen, was die Anzahl der Fehler während der Kompilierungsphase reduziert.

Installation

Führen Sie zur Installation den folgenden Befehl aus:

npm install nodemailer @types/nodemailer

Das Paket @types/nodemailer fügt die für TypeScript erforderlichen Typdeklarationen hinzu.

Hauptfunktionen

  • E-Mail-Versand über SMTP — Unterstützung für Gmail, Yandex, Mail.ru, SendGrid und alle anderen SMTP-Server.
  • Anhänge — Möglichkeit, Dateien, Bilder, PDFs anzuhängen.
  • HTML-Vorlagen — Versand von E-Mails mit formatiertem HTML-Inhalt.
  • SSL/TLS-Unterstützung — Sichere Datenübertragung.
  • Verbindungspool — Optimierung für den Massenversand.

Codebeispiel in TypeScript

Nachfolgend sehen Sie ein minimales Beispiel zum Senden einer E-Mail über Gmail SMTP mit TypeScript:

import nodemailer from 'nodemailer';

interface MailOptions { from: string; to: string; subject: string; text?: string; html?: string;}

async function sendEmail(options: MailOptions): Promise<void> { const transporter = nodemailer.createTransport({ service: 'gmail', auth: { user: 'your@gmail.com', pass: 'your-app-password', }, });

const info = await transporter.sendMail(options); console.log('E-Mail gesendet:', info.messageId);}

// VerwendungsendEmail({ from: 'your@gmail.com', to: 'recipient@example.com', subject: 'Hallo aus TypeScript!', html: '<h1>Test-E-Mail</h1><p>Gesendet mit Nodemailer</p>',});

Wichtig: Für Gmail müssen Sie ein App-Passwort (App Password) verwenden, nicht Ihr normales Passwort.

Wann sollte man Nodemailer verwenden?

Die Bibliothek eignet sich für:

  • Registrierungs-E-Mails (E-Mail-Bestätigung, Passwort-Wiederherstellung).
  • Bestellbenachrichtigungen in Online-Shops.
  • Newsletter und Marketing-E-Mails (unter Verwendung von Warteschlangen).
  • Automatische Berichte aus dem Backend (Logs, Fehler, Statistiken).

Wenn Sie in Ihrem TypeScript-Projekt E-Mails versenden müssen, bleibt Nodemailer aufgrund seiner Flexibilität, Zuverlässigkeit und der großen Community der De-facto-Standard.

Empfehlungen