Serviço será responsável pelo processo de cadastro, autenticação e autorização de usuários na plataforma, tendo como resposta um token JWT para ser tratado no front e no Gateway para possíveis controles de acesso.
Para testes, esta API está disponível no Heroku:
-
GET: https://user-service-go.herokuapp.com/user-api/usuarios/ (Lista Todos os usuários)
-
POST: https://user-service-go.herokuapp.com/user-api/novo/ (Cria Usuário)
-- Body da requisição JSON:
{
"name":"Nome do Usuário",
"email":"email@email.com",
"password":"senha"
}
- POST: https://user-service-go.herokuapp.com/user-api/login/ (Login)
-- Body da requisição JSON:
{
"email":"email@email.com",
"password":"senha"
}
- Go lang
- Docker
Após a instalação, é necessário baixar as dependencias seguindo o código abaixo:
$ go mod tidy
Após clonar o repositório, iniciaremos nosso banco de dados com o docker:
docker-compose up
É esperado uma saída final como:
"database system is ready to accept connections"
O que indica que nosso banco de dados está configurado e disponível.
Para executar a api é esperado um comando simples do Go, em um terminal na raiz do projeto:
go run main.go
Neste caso é esperado uma saída como:
"Listening and serving HTTP on :5000"
Para consumir esta API, temos tais endpoints:
- GET - /user-api/usuarios = Listar todos os usuários cadastrados, retornando status code 200;
- POST - /user-api/novo = Cria um novo usuário, retornando status code 204;
- POST - /user-api/login = Faz a autenticação do usuário, retornando um token JWT e um admin = true, caso o seja;