Skip to content

Instantly share code, notes, and snippets.

@pazuza

pazuza/index.js Secret

Last active April 8, 2020 15:22
Arquivo que contém as rotas.
const express = require('express');
const { uuid, isUuid } = require('uuidv4');
const projects = [];
const app = express();
app.use(express.json());
app.get('/projects', (request, response) => {
console.log(3);
const { title, owner } = request.query;
const results = title ? projects.filter(project => project.title.includes(title)) : projects;
return response.json(results);
});
app.post('/projects', (request, response) => {
const { title, owner } = request.body;
const project = { id: uuid(), title, owner };
projects.push(project);
return response.json(project);
});
app.put('/projects/:id', (request, response) => {
const { id } = request.params;
let projectIndex = projects.findIndex( project => project.id === id );
if ( projectIndex < 0 ) return response.status(400).json({ error: 'Project not found.' });
const project = {
id,
title,
owner
};
projects[projectIndex] = project;
return response.json(project);
});
app.delete('/projects/:id', (request, response) => {
const { id } = request.params;
let projectIndex = projects.findIndex( project => project.id === id );
if ( projectIndex < 0 ) return response.status(400).json({ error: 'Can not delete.' });
projects.splice(projectIndex, 1);
return response.send();
});
app.listen(3333, () => {
console.log('back-end started! 🚀');
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment