CRUD em Memória
[Recomendada para começar] | Área: Backend | Nível recomendado: Iniciante
Vídeo
Link direto: https://youtu.be/EU2kLPmyT1U
Tópicos
Configuração do Ambiente de Desenvolvimento:
Configurar o Nodemon para reiniciar o servidor automaticamente a cada alteração.
Estruturação do CRUD:
Revisão dos conceitos de CRUD.
Implementação de um array em memória para armazenar dados.
Criação de rotas para cada operação do CRUD.
Validação de Dados:
Introdução às técnicas e bibliotecas de validação de dados.
Aplicação de validações nas entradas de dados do CRUD.
Status HTTP:
Explicação sobre códigos de status HTTP e suas aplicações.
Implementação de códigos de status HTTP apropriados para cada operação do CRUD.
Material de Apoio
Repositório no GitHub
PDF para Download
Miro
Exercícios de Fixação
Exercícios de Validação
Desafio de Código
Crie um endpoint adicional na aplicação ExpressJS que responda com "Número total de itens: X" quando a rota /personagem/count
for acessada, onde X é o número total de itens na lista.
Implementar o novo endpoint no arquivo
index.js
.
Revisão de Código
Analise o código a seguir, encontre e corrija o erro.
const express = require("express");
const app = express();
const lista = ['Java', 'Kotlin', 'Android'];
app.get("/personagem/:id", function (req, res) {
const id = req.params.id;
const item = lista[id];
if (!item) {
return res.status(404).send('Item não encontrado.');
}
res.send(item);
});
app.post("/personagem", function (req, res) {
const body = req.body;
const novoItem = body.nome;
if (!novoItem) {
return res.status(400).send('Corpo da requisição deve conter a propriedade nome.');
}
if (lista.includes(novoItem)) {
return res.status(409).send('Esse item já existe na lista.');
}
lista.push(novoItem);
res.status(201).send('Item adicionado com sucesso: ' + novoItem);
});
app.listen(3000, function () {
console.log("Aplicação rodando em localhost:3000");
});
Projeto Prático
Crie uma nova aplicação ExpressJS que inclua:
Um endpoint que responda com todos os itens da lista quando a rota
/personagem
for acessada.Um endpoint que responda com um item específico da lista quando a rota
/personagem/:id
for acessada.Um endpoint que adicione um novo item à lista quando a rota
/personagem
for acessada com uma requisição POST.
Tarefas
Criação do Projeto:
Inicialize um novo projeto NodeJS.
Instale o ExpressJS.
Instale e configure o Nodemon.
Implementação dos Endpoints:
Crie um novo arquivo
index.js
.Implemente o endpoint que responda com todos os itens da lista na rota
/personagem
.Implemente o endpoint que responda com um item específico na rota
/personagem/:id
.Implemente o endpoint que adicione um novo item à lista com uma requisição POST na rota
/personagem
.
Last updated