gomail

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

Biblioteca gomail para envio de Email em Go

gomail é uma biblioteca poderosa e fácil de usar em Go (Golang) para envio de e-mail. Ela suporta e-mails em HTML, anexos, múltiplos destinatários, autenticação SMTP e criptografia TLS/SSL. A biblioteca é ideal para desenvolvedores que precisam integrar notificações por e-mail, confirmações de registro ou mailings de marketing em suas aplicações Go.

Por que usar gomail?

A biblioteca padrão do Go (net/smtp) fornece funcionalidades básicas para envio de e-mails, mas para tarefas reais muitas vezes faltam recursos: é difícil trabalhar com templates HTML, anexos, múltiplos destinatários e requisitos modernos de segurança (STARTTLS, OAuth2). A gomail resolve esses problemas, oferecendo uma API limpa e configuração flexível.

Instalação

Para instalar a gomail, execute o comando:

go get github.com/go-mail/mail/v2

Funcionalidades principais

  • Envio via SMTP com suporte a TLS/SSL
  • Suporte a e-mails HTML e texto
  • Anexos de arquivos e imagens incorporadas
  • Múltiplos destinatários (To, Cc, Bcc)
  • Cabeçalhos e codificações personalizáveis
  • Suporte a OAuth2 (por exemplo, API do Gmail)

Exemplo de código em Go

Abaixo está um exemplo simples de envio de e-mail HTML através do servidor SMTP do 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", "Olá do Go!")\tm.SetBody("text/html", "<h1>Olá!</h1><p>Este é um e-mail de teste.</p>")\tm.Attach("/path/to/file.pdf")

\tif err := d.DialAndSend(m); err != nil {\t\tlog.Fatal(err)\t}\tfmt.Println("E-mail enviado com sucesso!")}

Quando usar gomail

  • Quando precisar enviar e-mails transacionais (confirmações, redefinição de senha)
  • Para criar um serviço de mailings em Go
  • Quando houver necessidade de anexos ou formatação HTML complexa
  • Em aplicações corporativas com requisitos de criptografia

gomail é uma escolha confiável para a maioria das tarefas de envio de Email. Graças ao suporte ativo da comunidade e atualizações regulares, a biblioteca permanece relevante mesmo para projetos de alta carga.

Recommendations