Este projeto é uma API RESTful criada com Express.js, que permite gerenciar uma entidade de alunos. Ele inclui operações CRUD (Create, Read, Update, Delete) para a entidade Aluno, utilizando armazenamento em memória para simular um banco de dados. O objetivo é consolidar conceitos de HTTP, métodos REST e desenvolvimento de APIs.
-
Clone o repositório:
git clone https://github.com/seu-usuario/api-aluno.git cd api-aluno -
Instale as dependências:
npm install
api-aluno
├── app.js # Arquivo principal do aplicativo
└── routes
└── alunoRoutes.js # Definições das rotas para a entidade AlunoPara iniciar o servidor localmente, use o comando:
node app.jsO servidor estará em execução em http://localhost:3000.
- Rota:
POST /alunos - Descrição: Cria um novo aluno.
- Corpo da Requisição:
{ "nome": "Nome do Aluno", "email": "email@dominio.com", "nome_curso": "Nome do Curso" } - Resposta de Sucesso:
- Status:
201 Created - Exemplo:
{ "id": 1, "nome": "Nome do Aluno", "email": "email@dominio.com", "nome_curso": "Nome do Curso" }
- Status:
- Rota:
GET /alunos - Descrição: Retorna uma lista com todos os alunos.
- Resposta de Sucesso:
- Status:
200 OK - Exemplo:
[ { "id": 1, "nome": "Nome do Aluno", "email": "email@dominio.com", "nome_curso": "Nome do Curso" } ]
- Status:
- Rota:
GET /alunos/:id - Descrição: Retorna os dados de um aluno específico pelo ID.
- Parâmetro:
iddo aluno - Resposta de Sucesso:
- Status:
200 OK
- Status:
- Resposta de Erro:
- Status:
404 Not Found - Exemplo:
{ "message": "Aluno não encontrado" }
- Status:
- Rota:
PUT /alunos/:id - Descrição: Atualiza as informações de um aluno pelo ID.
- Parâmetro:
iddo aluno - Corpo da Requisição:
{ "nome": "Novo Nome do Aluno", "email": "novoemail@dominio.com", "nome_curso": "Novo Nome do Curso" } - Resposta de Sucesso:
- Status:
200 OK - Exemplo:
{ "id": 1, "nome": "Novo Nome do Aluno", "email": "novoemail@dominio.com", "nome_curso": "Novo Nome do Curso" }
- Status:
- Resposta de Erro:
- Status:
404 Not Found - Exemplo:
{ "message": "Aluno não encontrado" }
- Status:
- Rota:
DELETE /alunos/:id - Descrição: Exclui um aluno específico pelo ID.
- Parâmetro:
iddo aluno - Resposta de Sucesso:
- Status:
200 OK - Exemplo:
{ "message": "Aluno excluído com sucesso" }
- Status:
- Resposta de Erro:
- Status:
404 Not Found - Exemplo:
{ "message": "Aluno não encontrado" }
- Status:
A API pode ser testada usando ferramentas como Postman ou curl. Para testar, basta enviar requisições HTTP para os endpoints detalhados acima.
Exemplo de teste com curl:
curl -X POST http://localhost:3000/alunos -H "Content-Type: application/json" -d '{"nome":"Maria Silva","email":"maria@exemplo.com","nome_curso":"Matemática"}'