Bibliothèque gomail pour l'envoi d'Email en Go
gomail est une bibliothèque puissante et simple d'utilisation en Go (Golang) pour l'envoi d'emails. Elle prend en charge les emails HTML, les pièces jointes, plusieurs destinataires, l'authentification SMTP et le chiffrement TLS/SSL. Cette bibliothèque est idéale pour les développeurs qui doivent intégrer des notifications par email, des confirmations d'inscription ou des newsletters marketing dans leurs applications Go.
Pourquoi utiliser gomail ?
La bibliothèque standard de Go (net/smtp) offre des fonctionnalités de base pour l'envoi d'emails, mais pour des tâches réelles, elle manque souvent de fonctionnalités : il est difficile de travailler avec des modèles HTML, des pièces jointes, plusieurs destinataires et les exigences de sécurité modernes (STARTTLS, OAuth2). gomail résout ces problèmes en proposant une API propre et une configuration flexible.
Installation
Pour installer gomail, exécutez la commande :
go get github.com/go-mail/mail/v2Fonctionnalités principales
- Envoi via SMTP avec prise en charge de TLS/SSL
- Prise en charge des emails HTML et texte
- Pièces jointes et images intégrées
- Destinataires multiples (To, Cc, Bcc)
- En-têtes et encodages personnalisables
- Prise en charge d'OAuth2 (par exemple, Gmail API)
Exemple de code en Go
Voici un exemple simple d'envoi d'un email HTML via le serveur SMTP de Gmail :
package main
import (\t"crypto/tls"\t"fmt"\t"log"
\tgomail "github.com/go-mail/mail/v2")
func main() {\td := gomail.NewDialer("smtp.gmail.com", 587, "your_email@gmail.com", "your_app_password")\td.TLSConfig = &tls.Config{InsecureSkipVerify: false}
\tm := gomail.NewMessage()\tm.SetHeader("From", "your_email@gmail.com")\tm.SetHeader("To", "recipient@example.com")\tm.SetHeader("Subject", "Bonjour depuis Go !")\tm.SetBody("text/html", "<h1>Bonjour !</h1><p>Ceci est un email de test.</p>")\tm.Attach("/path/to/file.pdf")
\tif err := d.DialAndSend(m); err != nil {\t\tlog.Fatal(err)\t}\tfmt.Println("Email envoyé avec succès !")}Quand utiliser gomail
- Lorsque vous devez envoyer des emails transactionnels (confirmations, réinitialisation de mot de passe)
- Pour créer un service de newsletters en Go
- Lorsque des pièces jointes ou une mise en forme HTML complexe sont nécessaires
- Dans les applications d'entreprise avec des exigences de chiffrement
gomail est un choix fiable pour la plupart des tâches d'envoi d'Email. Grâce au soutien actif de la communauté et aux mises à jour régulières, la bibliothèque reste pertinente même pour les projets à forte charge.
Aussi dans la bibliothèque
Travailler avec Excel en JavaScript (Node.js) : bibliothèques et exemples de code
Internationalisation (i18n) en Java : guide complet avec exemples