Servidor de emails local para testes usando Mailhog
Mailhog é uma biblioteca open source escrita em Golang que contém um servidor de emails com:
- UI - Caixa de entrada;
- Protocolo SMTP;
- API;
Você vai precisar
- Linguagem Go
- Mailhog
- Se você usa Windows pode utilizar a página de releases aqui
Mão na massa
Para este exemplo estou utilizando uma distribuição linux baseada em debian, com a linguagem go e o mailhog instalados basta executar o comando ~/go/bin/MailHog
no terminal.
Então acessar no navegador a url http://localhost:8025/
E você terá já a visualização de um sistema de caixa de entrada do própio mailhog.
Para utilizar o SMTP basta utilizar a seguinte configuração STMP, por exemplo, no Laravel:
MAIL_MAILER=smtR=smtp
MAIL_HOST=127.0.0.1
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
[email protected]
MAIL_FROM_NAME="${APP_NAME}"
Agora basta criar uma funcionalidade de email que utilize protocolo SMTP na sua linguagem/framework preferidos utilizando as configurações, e seus emails estarão já sendo enviados para a caixa de entrada do seu servidor Mailhog. 😀
Para utilizar API basta colocar /api/v2/{rota}
;
Endpoint de exemplo para pegar mensagens: http://localhost:8025/api/v2/messages?limit=50
;