Como escrever uma API REST em JavaScript em 30 minutos: guia prático

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course
```html

Introdução: REST API em meia hora é real



REST API é a base da interação web moderna. Seja você um desenvolvedor frontend querendo entender o backend, ou um iniciante que deseja criar rapidamente seu primeiro servidor, este guia é para você. Vamos detalhar como escrever uma REST API completa em JavaScript (Node.js) em literalmente 30 minutos.



Usamos uma stack mínima: Node.js e Express.js — o framework mais popular para criar APIs. Nada de código extra, apenas prática. Ao final do artigo, você terá um servidor funcional com operações CRUD (criação, leitura, atualização, exclusão).



Passo 1: Preparação e instalação de dependências



Para começar, certifique-se de ter o Node.js instalado (versão 14 ou superior). Você pode baixá-lo do site oficial. Verifique a instalação:



node -vnpm -v


Crie uma pasta para o projeto e entre nela:



mkdir my-rest-apicd my-rest-api


Inicialize o projeto e instale o Express:



npm init -ynpm install express


Para maior comodidade, vamos instalar o nodemon — ele reinicia automaticamente o servidor quando houver alterações no código:



npm install --save-dev nodemon


Agora, abra o arquivo package.json e substitua a seção "scripts" por:



"scripts": {  "start": "node index.js",  "dev": "nodemon index.js"}


Ótimo! Tudo pronto para escrever o código.



Passo 2: Escrevendo o servidor básico e o primeiro endpoint



Crie o arquivo index.js na raiz do projeto. Vamos começar importando o Express e configurando a porta:



const express = require('express');const app = express();const PORT = 3000;

// Middleware para parsing de JSONapp.use(express.json());

// Endpoint de teste simplesapp.get('/', (req, res) => { res.send('Minha REST API está funcionando!');});

// Iniciar o servidorapp.listen(PORT, () => { console.log(`Servidor rodando em http://localhost:${PORT}`);});


Inicie o servidor com o comando:



npm run dev


Acesse no navegador o endereço http://localhost:3000 — você deverá ver a mensagem "Minha REST API está funcionando!".



Adicionando uma simulação de banco de dados



Para simplificar, vamos armazenar os dados em memória (um array). Em um projeto real, você conectaria um MongoDB ou PostgreSQL, mas para aprendizado isso é suficiente.



// Simulação de banco de dadoslet users = [  { id: 1, name: 'Alexey', email: 'alex@example.com' },  { id: 2, name: 'Maria', email: 'maria@example.com' }];let nextId = 3;


Passo 3: Implementação das operações CRUD



Agora vamos criar endpoints completos para trabalhar com usuários. Implementaremos os quatro principais métodos HTTP: GET, POST, PUT, DELETE.



GET — obter todos os usuários



// Obter todos os usuáriosapp.get('/api/users', (req, res) => {  res.json(users);});

// Obter um usuário por IDapp.get('/api/users/:id', (req, res) => { const id = parseInt(req.params.id); const user = users.find(u => u.id === id); if (!user) { return res.status(404).json({ message: 'Usuário não encontrado' }); } res.json(user);});


POST — criar um novo usuário



// Criar usuárioapp.post('/api/users', (req, res) => {  const { name, email } = req.body;    // Validação simples  if (!name || !email) {    return res.status(400).json({ message: 'Nome e email são obrigatórios' });  }    const newUser = {    id: nextId++,    name,    email  };    users.push(newUser);  res.status(201).json(newUser);});


PUT — atualizar um usuário



// Atualizar usuárioapp.put('/api/users/:id', (req, res) => {  const id = parseInt(req.params.id);  const { name, email } = req.bod
```                

Blogs

Book Recommendations