Willkommen in der go-mail-Dokumentation
go-mail ist eine einfach zu benutzende Go-Bibliothek zum Formatieren und Versenden von E-Mails. Es verwerndet einen idomatischen Go-Stil und folgt “Best Practices” mit vernünftigen Standards. Die Bibliothek hängt nur von der Go-Standardbibliothek ab.
go-mail funktioniert wie ein programmatischer E-Mail-Client und bietet viele Methoden und Funktionalitäten, die Du als Standard in einem E-Mail-Programm betrachten würdest.
Funktions-Highlights
Nur abhängig von der Standard-Bibliothek
go-mail benötigt keine Module von Drittanbietern und basiert ausschließlich auf der Go-Standardbibliothek
Modern, idiomatisch
Wir verwenden moderne und idiotmatische Go-Standards mit dieser Bibliothek und folgen den modernsten bewährten -Verfahren mit vernünftigen Standardeinstellungen
Vollständiger TLS-Support
go-mail unterstützt implizite STARTTLS mit verschiedenen Richtlinien sowie explizite SSL/TLS für Verbindungen zum Senden von Mail-Servern
Kontexte
Wir verwenden Go-Kontexte für einen besseren Kontrollfluss und die Handhabung von Timeouts/Abbrüchen
SMTP-Authentifizierung
Unterstützung für drei gängige SMTP-Authentifizierungsmechanismen (LOGIN, PLAIN, CRAM-MD5) sowie für benutzerdefinierte Authentifizierungen.
Überprüfung von E-Mail-Adressen
go-mail folgt RFC5322 und validiert die angegebenen Mailadressen
Unterstützung allgemeiner Mail-Header
go-mail bringt Generatoren für viele gängige Mail-Header mit (Message-ID, Datum, Bulk-Precedence, Priority, etc.)
Wiederverwendung von Verbindungen
Du kannst mehrere Mails über dieselbe SMTP-Verbindung senden
Anhänge/Einbettungen
Volle Unterstützung für Anhänge und Inline-Einbettungen aus verschiedenen Quellen (lokales Dateisystem, io.Reader
oder embed.FS
)
Kodierungen und Inhaltsarten
go-mail unterstützt standardmäßig verschiedene Kodierungen und Inhaltstypen
Middlewares
Middleware-Unterstützung für Bibliotheken von Drittanbietern, um E-Mail-Nachrichten an ihre Bedürfnisse anzupassen
Sendmail und Dateispeicherung
Unterstützung für den Versand von E-Mail-Nachrichten über eine lokale sendmail-Installation sowie die Ausgabe in lokale Dateien (z. B. als .eml
-Dateien auf der Festplatte, um sie in einem MUA zu öffnen)
MDNs und DSNs
go-mail bietet Unterstützung für die Abfrage von MDNs (RFC 8098) und DSNs (RFC 1891)
Template-Unterstützung
Unterstützung für Go’s html/template
und text/template
(als Nachrichtentext, alternativer Teil oder Anhang/Embedded)
DKIM Unterstützung
DKIM-Signatur-Unterstützung über die go-mail-middlware/dkim Middleware
Debug-Logging
Unterstützung für den SMTP-Client, um jede SMTP-Kommunikation zu Debug-Zwecken in STDERR zu protokollieren
Benutzerdefinierte Zustellungsfehler
Mit dem Typ SendError
kann der Benutzer detaillierte Informationen über Zustellungsfehler erhalten einschließlich der Angabe, ob der Fehler vorübergehender Natur ist oder nicht
Unterstützung
Wir haben einen Support- und allgemeinen Diskussionskanal auf Discord. Du findest uns hier: #go-mail