O Projeto de Gerenciamento de Heróis é uma aplicação de backend desenvolvida para oferecer funcionalidades de CRUD (Create, Read, Update, Delete) relacionadas a heróis. Ele permite a criação, atualização, exclusão e recuperação de informações sobre heróis, bem como funcionalidades adicionais, como batalhas entre heróis e registro de histórico de batalhas.
- Criação, leitura, atualização e exclusão (CRUD) de heróis.
- Realização de batalhas entre heróis.
- Registro e consulta de histórico de batalhas.
- Node.js
- Express.js
- PostgreSQL
- Clone o repositório para o seu ambiente local.
- Instale as dependências do projeto usando
npm install
. - Configure o banco de dados PostgreSQL com o nome
superherois
e execute o scriptscript.sql
para criar as tabelas necessárias. - Abra o arquivo
index.js
e ajuste as configurações do banco de dados conforme necessário (usuário, senha, host, porta). - Inicie o servidor executando
npm run dev
. - Acesse as diferentes rotas disponÃveis conforme a documentação fornecida.
Testando as Rotas no Insomnia:
Para testar cada rota individualmente, siga estas instruções:
- Rota para obter todos os heróis
- Método: GET
- URL:
http://localhost:4000/herois
- Rota para adicionar um novo herói
- Método: POST
- URL:
http://localhost:4000/herois
- Corpo da Requisição (JSON): { "nome": "Nome do Herói", "poder": "Poder do Herói", "nivel": 1, "hp": 100 }
- Rota para atualizar um herói
- Método: PUT
- URL:
http://localhost:4000/herois/{id}
- Substitua
{id}
pelo ID do herói que deseja atualizar.
- Substitua
- Corpo da Requisição (JSON): { "nome": "Novo Nome do Herói", "poder": "Novo Poder do Herói", "nivel": 2, "hp": 150 }
- Rota para deletar um herói
- Método: DELETE
- URL:
http://localhost:4000/herois/{id}
- Substitua
{id}
pelo ID do herói que deseja deletar.
- Substitua
- Rota para obter um herói especÃfico
- Método: GET
- URL:
http://localhost:4000/herois/{id}
- Substitua
{id}
pelo ID do herói que deseja recuperar.
- Substitua
- Rota para obter todos os heróis de um determinado nÃvel
- Método: GET
- URL:
http://localhost:4000/herois/nivel/{nivel}
- Substitua
{nivel}
pelo nÃvel desejado.
- Substitua
- Rota para obter todos os heróis com um determinado poder
- Método: GET
- URL:
http://localhost:4000/herois/poder/{poder}
- Substitua
{poder}
pelo poder desejado.
- Substitua
- Rota para realizar uma batalha entre dois heróis
- Método: GET
- URL:
http://localhost:4000/batalhas/{heroi1_id}/{heroi2_id}
- Substitua
{heroi1_id}
e{heroi2_id}
pelos IDs dos heróis que deseja colocar para batalhar.
- Substitua
- Rota para obter o histórico de batalhas
- Método: GET
- URL:
http://localhost:4000/batalhas