Como escrever uma API REST em JavaScript em 30 minutos

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 JavaScript — rápido e simples

O desenvolvimento web moderno é impensável sem APIs. REST (Representational State Transfer) é o estilo arquitetônico mais popular para criar serviços web. Se você quer criar rapidamente um backend para sua aplicação ou aprender os fundamentos do desenvolvimento server-side, Node.js e Express são a escolha ideal.

Neste artigo, em 30 minutos escreveremos uma REST API completa em JavaScript. Você aprenderá como configurar o servidor, organizar as rotas (routing), implementar operações CRUD (Create, Read, Update, Delete) e testar a API com Postman. Nada de teoria desnecessária — apenas prática. Vamos nessa!

1. Preparação do ambiente e instalação de dependências

Antes de escrever código, certifique-se de que o Node.js (versão 14 ou superior) está instalado no seu computador. Você pode verificar isso com o comando:

node -v
npm -v

Crie uma nova pasta para o projeto e inicialize o package.json:

mkdir my-rest-api
cd my-rest-api
npm init -y

Agora vamos instalar o Express — um framework minimalista e flexível para Node.js. Também instalaremos o body-parser para processar requisições JSON (nas versões modernas do Express ele já vem embutido, mas para fins de clareza vamos adicioná-lo explicitamente):

npm install express body-parser

A estrutura do projeto será simples:

  • app.js — arquivo principal do servidor
  • routes/ — pasta com as rotas
  • data/ — pasta com dados de teste (simulação de banco de dados)

2. Criando um servidor básico com Express

Crie o arquivo app.js e escreva o seguinte código:

const express = require('express');
const bodyParser = require('body-parser');
const app = express();
const PORT = 3000;

// Middleware para processar JSON
app.use(bodyParser.json());

// Rota de teste simples
app.get('/', (req, res) => {
    res.send('REST API funcionando!');
});

// Inicialização do servidor
app.listen(PORT, () => {
    console.log(`Servidor rodando em http://localhost:${PORT}`);
});

Execute o servidor com o comando node app.js e abra http://localhost:3000 no navegador. Você deverá ver a mensagem "REST API funcionando!". Parabéns, você acabou de criar seu primeiro servidor web com Node.js!

Observe: o body-parser converte os dados recebidos para o formato JSON, o que é necessário para requisições POST e PUT.

3. Organização das rotas e operações CRUD

Agora vamos adicionar dados reais. Crie a pasta data e dentro dela o arquivo items.js com um array de teste:

const items = [
    { id: 1, name: 'Estudar Node.js', completed: false },
    { id: 2, name: 'Escrever API', completed: true },
    { id: 3, name: 'Publicar artigo', completed: false }
];

module.exports = items;

Crie a pasta routes e o arquivo items.js dentro dela. Aqui descreveremos todas as rotas para trabalhar com as tarefas (to-do list):

const express = require('express');
const router = express.Router();
let items = require('../data/items');

// GET /api/items — obter todos os itens
router.get('/', (req, res) => {
    res.json(items);
});

// GET /api/items/:id — obter um item pelo ID
router.get('/:id', (req, res) => {
    const id = parseInt(req.params.id);
    const item = items.find(i => i.id === id);
    if (!item) return res.status(404).json({ message: 'Item não encontrado' });
    res.json(item);
});

// POST /api/items — criar um novo item
router.post('/', (req, res) => {
    const newItem = {
        id: items.length + 1,
        name: req.body.name,
        completed: req.body.completed || false
    };
    items.push(newItem);
    res.status(201).json(newItem);
});

// PUT /api/items/:id — atualizar um item
router.put('/:i
```                

Blogs

Book Recommendations