Este é um microservice de envio de email por SMTP, com uso de RabbitMQ e armazenamento em banco de dados em memoria com H2.
-
JDK 17+.
-
Email e senha.
-
Renomeie o arquivo .env.exemple para
.env
e altere os campos com seus dados de email. -
Dentro da pasta do projeto execute:
docker compose up -d
./mvnw spring-boot:run
-
Este deve ser o corpo da requisição HTTP, o endpoint e header:
POST http://127.0.0.1:8080/api/v1/emails HTTP/1.1 Content-Type: application/json { "ownerRef": "Test", "emailFrom": "your@email.com", "emailTo": "your@email.com", "subject": "Test", "text": "Test Test Test Test Test" }
Utilize o Postman ou qualquer outra ferramenta. Caso utilize a extensão do VSCode, REST Client veja o schema no arquivo api.http.
-
Acesse a interface web: http://127.0.0.1:15672.
-
Siga para Queues -> ms.email -> Publish message.
-
Copie o corpo da mensagem abaixo alterando as informações, cole em Payload e Publish Message:
{ "ownerRef": "Test", "emailFrom": "your@email.com", "emailTo": "your@email.com", "subject": "Test", "text": "Test Test Test Test Test" }
-
Veja no console as informações.