Introdução: APIs RESTful são fundamentais para a criação de aplicações web modernas, permitindo a comunicação entre diferentes sistemas de maneira eficiente. Neste tutorial, vamos construir uma API RESTful utilizando Node.js e Express, passo a passo.
Seções Principais:
- Configuração do Ambiente: Primeiro, vamos configurar nosso ambiente de desenvolvimento. Certifique-se de ter o Node.js e o npm instalados em sua máquina. Crie um novo diretório para o projeto e inicialize um novo projeto Node.js:bashCopiar código
mkdir api-restful cd api-restful npm init -y
- Instalação de Dependências: Vamos instalar o Express e o Nodemon para facilitar o desenvolvimento:bashCopiar código
npm install express npm install --save-dev nodemon
- Criação do Servidor Básico: Crie um arquivo
index.js
e configure um servidor básico com Express:javascriptCopiar códigoconst express = require('express'); const app = express(); const port = 3000; app.use(express.json()); app.get('/', (req, res) => { res.send('Hello World!'); }); app.listen(port, () => { console.log(`Server running at http://localhost:${port}`); });
- Definição das Rotas: Adicione rotas para as operações CRUD (Create, Read, Update, Delete):javascriptCopiar código
const items = []; app.post('/items', (req, res) => { const item = req.body; items.push(item); res.status(201).send(item); }); app.get('/items', (req, res) => { res.send(items); }); app.get('/items/:id', (req, res) => { const item = items.find(i => i.id === parseInt(req.params.id)); if (!item) return res.status(404).send('Item not found'); res.send(item); }); app.put('/items/:id', (req, res) => { const item = items.find(i => i.id === parseInt(req.params.id)); if (!item) return res.status(404).send('Item not found'); item.name = req.body.name; res.send(item); }); app.delete('/items/:id', (req, res) => { const itemIndex = items.findIndex(i => i.id === parseInt(req.params.id)); if (itemIndex === -1) return res.status(404).send('Item not found'); const deletedItem = items.splice(itemIndex, 1); res.send(deletedItem); });
Add a Comment