1 - Instalando as dependencias do projeto
cd ensinando-endpoints
npm install2 - Iniciando a aplicação
npm startNo arquivo client/db.ts temos uma simulação de framework que nos ajuda a enviar e receber informações para um banco de dados. Vocês não precisam entender os detalhes da implementação desse arquivo, porem devem entender o que eles nos fornece para que consigamos trabalhar.
são 5 operações que podemos utilizar apartir da importação desse arquivo e são elas:
- findAll - nos retorna todas as ocorrencias dentro de do banco
- findById - nos retorna apenas uma ocorrencia no banco de acordo com o ID
- create - cria uma nova ocorrencia no banco de dados
- removeById - remove uma ocorrencia de acordo com o id
- updateById - atualiza uma ocorrencia de acordo com o id
Primeiro se certifique de estar importando o arquivo client/db.ts no inicio do arquivo que você pretende trabalhar.
import db from './client/db';Para receber todos os elementos existentes no banco você pode utilizar a função findAll
const items = db.findAll()
console.log(items)Para receber apenas um elemento de acordo com o seu ID você pode utilizar a função findById
const id = 1
const item = db.findById(id)
console.log(item)Para criar um novo elemento no banco você pode utilizar a função create
const user = {
id: 1,
name: "Joana",
email: "[email protected]",
password: "abc.123#"
}
const createdItem = db.create(user)
console.log(createdItem)Para alterar um determinado elemento por ID você pode utilizar a função updateById
const id = 1
const user = {
id = id,
name: "Joana Maria",
email: "[email protected]",
password: "123#abc"
}
const updatedItem = db.updatedById(id, user)
console.log(updatedItem)Para remover apenas um elemento de acordo com o seu ID você pode utilizar a função removeById
const id = 1
const removedItem = db.removeById(id)
console.log(removedItem)Para cada funcão você precisa criar uma rota com nome ("/rota") e metodo de requisição http (get, delete, etc), exemplo:
app.get("/", (req, res) => {
const acharTodosUsuarios = todosUsuarios()
res.send(acharTodosUsuarios)
});