The-Cat-API

Resolução do case SRE

Descrição

Para solução optei por construir a aplicação com o Framework SpringBoot e Linguagem de programação Java

Busquei simplificar o código. Utilizando injeção de dependências pelo dump fazendo backup do MYSQL, rodando dois containers no DOCKER, um para o banco e outro para o SpringBoot.

Fatos interessantes

  • Os endpoints estão completos, apesar de ser apenas solicitado os métodos GET.

Na URI temos três parâmetros:

  • '/breeds': acessa informações de todas as raças de gatos, contendo origin(origem), temperament(temperamento),name(nome da raça), description(descrição).
  • '/glasses':acessa informações de 3 imagens de gatos de óculos, contendo a url.
  • '/hat': acessa informações de 3 imagens de gatos de chapéu, contendo a url.

O que será necessário?

  • Docker para buildar os container
  • Postman ou de sua prefêrencia para consumir as API -Git para clonar o projeto

Como rodar as aplicações?

  1. Clone o meu repositório em seu diretório local.
  1. Abra o Docker Desktop para iniciar
  2. Na pasta do projeto navegue até o diretório contendo o docker-compose.yml
  • Na pasta do projeto navegue até \The-Cat-API\src e copie
  1. abra o cmd

  2. digite cd e cole o caminho copiado

  3. Com o Docker ligado execute o seguinte comando: docker-compose up -d --build

  4. Logo após execute o comando: docker ps

  5. Depois copie o primeiro id do container e digite o comando: docker logs -f id_copiado

  6. espere rodar até aparecer a mensagem JVN running e logo após aperte ctrl+C e digite o seguinte comando: docker exec -i src_db_1 mysql -uroot -p"Admin357/" db_thecatapi < db.sql

  7. Depois de ligar o banco de dados digite novamente o comando: docker logs -f id_copiado para ver o console rodando as execuções

  8. Abra o Postman e clique em import

  9. Depois clique em Upload Files

  10. Entre na pasta The-Cat-API

  11. Clique em Documentação

  12. Clique no arquivo The Cat API .postman_collection e em abrir

  13. Clique em import

  14. Clique no método que deseja testar e depois

  15. Exemplos de Breeds(raças) clicando em send:

  16. Exemplo de Breeds por id (raça específica), não esqueça de passar o /id desejado depois de '/breeds' e clicar em send:

  17. Exemplo de Breeds por temperament(raça por temperamento , não esqueça de passar o /temperament/tipo_de_temperamento desejado depois de '/breeds' e clicar em send:

    21.Exemplo de Breeds por origin(origem), não esqueça de passar a origin/lugar desejado depois de '/breeds' e clicar em send:

  18. Exemplo de gatos de Glasses(Óculos) clicando em send:

  19. Exemplo de gatos de Hat(Chapéu) clicando em send:

  20. Sempre após fazer uma requisição no POSTMAN, perceba que uma mensagem de log será gerada em seu console

  21. Após o log ser gerado ele ficará gravado em uma pasta de logs chamado spring.log