gomail

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

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/v2

Fonctionnalité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.

Recommendations