Case back-end com dois objetivos a serem desenvolvidos e implementados.
Sendo utilizado o Node.js como stack principal e MongoDB para base de dados.
Criação de script para popular um banco de dados utilizando o MongoDB a partir de uma API fornecida.
Criação de uma API Rest viabilizando um CRUD, para gestão dos dados utilizados.
Sendo necessário a hospedagem em um ambiente ubuntu em máquina virtualizada AWS.
Foi usado o Amazon container service (EC2 ECS), que permite escalar contêineres do docker com alto desempenho.
Após a criação da Docker Container Image em repositorio na AWS, a instância criada disponibiliza a utilização e acesso.
Com a configuração e liberação da porta 3000 da instância, temos para acesso a URL: http://ec2-18-213-245-167.compute-1.amazonaws.com/
Respeitando as rotas configuradas na API, seguimos com o detalhamento:
-
Método GET
- Listagem: http://ec2-18-213-245-167.compute-1.amazonaws.com:3000/universities
- Listagem por id: http://ec2-18-213-245-167.compute-1.amazonaws.com:3000/universities/ {id_a_ser_buscado}
- Listagem por pais: http://ec2-18-213-245-167.compute-1.amazonaws.com:3000/universities/country/query?country= {nome_pais}
-
Método POST
-
Método PUT/PATCH
- Atualização: http://ec2-18-213-245-167.compute-1.amazonaws.com:3000/universities/ {id_a_ser_atualizado}
-
Método DELETE
- Exclusão: http://ec2-18-213-245-167.compute-1.amazonaws.com:3000/universities/ {id_a_ser_deletado}
Para o método POST é necessário o envio de um body na requisição. Sendo ele em formato JSON com os seguintes campos e características:
Para o desenvolvimento foi utilizado o Postman, sendo possível a utilização de outras ferramentas API client.
Disponível em ambiente local, caso usuário/dev tenha o Docker em sua máquina. Utilizando o Docker Compose.
docker-compose up
Docker já configurado.
Instalação de dependências
yarn add
Scripts pre definidos contidos em package.json Para rodar o serviço
yarn dev
Script para inserção de dados no MongoDB
yarn insert
Script do qual realiza todos os procedimentos necessários. Inserção e inicio da API.
yarn start
Para as rotas do tipo GET, estão limitados os registros por conta da grande quantidade. 📦
Está disponível nessa API as query string, que atraves delas é possivel filtrar sua consulta 😉
Ao utilizar uma rota semelhante as demais vistas, conseguimos passar por parametro pares/valores que serão lidos
Seu uso é simples, após a URL adicionamos o primeiro valor usando a sintaxe: "query?" seguido de "Chave=Valor"
Para utilizar o filtro de pais:
- http://ec2-18-213-245-167.compute-1.amazonaws.com:3000/universities/country/query?country= {nome_pais}
Para retirar a limitação de registros:
