Criar uma API REST pode parecer intimidador no início, mas com as ferramentas certas e um passo a passo bem explicado, você verá que é mais simples do que imagina.
Neste guia completo, vamos construir uma API REST com Node.js e Express, duas das tecnologias mais populares no ecossistema JavaScript. Ao final, você terá uma API funcional que retorna dados em formato JSON e estará preparado para expandir suas funcionalidades.
Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!
Para fazer o download do(s) arquivo(s) utilizados na aula, preencha com o seu e-mail:
Não vamos te encaminhar nenhum tipo de SPAM! A Hashtag Treinamentos é uma empresa preocupada com a proteção de seus dados e realiza o tratamento de acordo com a Lei Geral de Proteção de Dados (Lei n. 13.709/18). Qualquer dúvida, nos contate.
O que você vai aprender aqui?
O que é uma API REST?
Antes de mergulharmos no código, é essencial entender o que é uma API REST e por que ela é tão importante no desenvolvimento de aplicações modernas.
- API (Application Programming Interface): É como se fosse uma ponte, uma interface que permite a comunicação entre diferentes sistemas. Por exemplo, quando você usa um aplicativo de previsão do tempo, ele se comunica com uma API para obter os dados meteorológicos de uma fonte.
- REST (Representational State Transfer): É um estilo arquitetural que define um conjunto de boas práticas para criar APIs escaláveis (fáceis de adaptar) e de fácil manutenção. APIs RESTful seguem princípios como o uso de métodos HTTP (GET, POST, PUT, DELETE) para realizar operações e retornar dados em formatos como JSON.
Por que Node.js e Express?
- Node.js: É um ambiente de execução JavaScript que permite criar aplicações que rodam no servidor de forma eficiente e leve. Ele tem a vantagem de ser bem leve, pois é baseado no motor V8 do Google Chrome, e é amplamente utilizado pra construir APIs e aplicações em tempo real (como jogos online, onde as informações precisam ser atualizadas instantaneamente).
- Express: É um framework minimalista para Node.js que facilita a criação de APIs e aplicações web. Ele é leve, flexível e conta com uma grande comunidade de desenvolvedores.
Juntos, Node.js e Express formam uma combinação poderosa para desenvolver APIs rápidas, escaláveis e de fácil manutenção.
Passo a Passo: Criando uma API REST com Node.js e Express
Vamos colocar a mão na massa e criar uma API REST simples, mas funcional.
Siga os passos abaixo:
1. Configuração do Ambiente
Com o VS Code aberto e o Node.js instalado (se precisar, consulte o nosso guia que mostra como fazer as duas coisas!), navegue até a pasta do projeto utilizando o terminal.
Antes de começar, certifique-se de ter o Node.js e o npm (Node Package Manager) instalados. Você pode verificar a instalação com os comandos:
node -v npm -v
2. Inicializando o Projeto
Crie uma pasta para o seu projeto e, dentro dela, execute o comando abaixo para inicializar um novo projeto Node.js:
npm init -y
Isso criará um arquivo package.json, que armazena as informações e dependências do projeto. O -y serve para aceitar as configurações de forma padrão, sem precisar responder a perguntas.
Antes de seguir, para o bom funcionamento dos módulos, vá no arquivo package.json e adicione esta linha, entre as linhas “description” e “dependencies”:
“type”: “module”,
3. Instalando o Express
Agora, instale o Express usando o npm:
npm install express
Isso adicionará o Express como uma dependência do seu projeto. O Express será responsável por gerenciar as rotas e requisições da sua API.
4. Criando o Arquivo da API
Antes de prosseguir, se você não domina o básico de JavaScript e não sabe, por exemplo, o que é uma arrow function, sugerimos a leitura deste post com tudo o que você precisa saber sobre JavaScript antes de aprender React.
Se você sabe o que é uma arrow function, vai ver que usaremos uma aqui embaixo. Crie um arquivo chamado api.js e adicione o código:
// Importando o Express import express from "express"; // Criando uma instância do Express const app = express(); // Definindo a porta do servidor const PORT = 3000; // Simulando um banco de dados com um array const arrResponse = [ { name: "Diego", company: "Hashtag Programação" }, { name: "Alon", company: "Hashtag Treinamentos" }, ]; // Rota GET para a raiz da API app.get("/", (req, res) => { res.json(arrResponse); // Retorna o array em formato JSON }); // Iniciando o servidor app.listen(PORT, () => console.log(`O servidor está rodando na porta ${PORT}`));
5. Executando a API
No terminal, execute o comando abaixo para iniciar o servidor:
node ./api.js
Se tudo estiver certo, você verá a mensagem: “O servidor está rodando na porta 3000”.
6. Testando a API
Abra o navegador e acesse http://localhost:3000/.
Você verá a resposta da API em formato JSON:
[ { "name": "Diego", "company": "Hashtag Programação" }, { "name": "Alon", "company": "Hashtag Treinamentos" } ]
Entendendo o Código
Vamos detalhar o que cada parte do código faz:
Importação do Express
import express from "express";
Aqui, estamos importando o módulo express para usar suas funcionalidades.
Criação do Servidor
const app = express();
Criamos uma instância do Express, que será o núcleo da nossa API.
Definição da Porta
const PORT = 3000;
Definimos a porta em que o servidor vai rodar. A porta 3000 é comumente usada para desenvolvimento.
Simulação de um Banco de Dados
const arrResponse = [ { name: "Diego", company: "Hashtag Programação" }, { name: "Alon", company: "Hashtag Treinamentos" }, ];
Usamos um array para simular um banco de dados. Em um projeto real, você provavelmente usaria um banco de dados como MongoDB ou MySQL.
Rota GET
app.get("/", (req, res) => { res.json(arrResponse); });
Aqui, definimos uma rota GET
para a raiz da API (/). Quando alguém acessar essa rota, a API retornará o array arrResponse em formato JSON.
Inicialização do Servidor
app.listen(PORT, () => console.log(`O servidor está rodando na porta ${PORT}`));
Finalmente, iniciamos o servidor na porta definida e exibimos uma mensagem no console para confirmar que está tudo funcionando.
Conclusão
Criar uma API REST com Node.js e Express é uma habilidade essencial para qualquer desenvolvedor. Neste guia, você aprendeu a configurar um projeto, criar rotas básicas e testar sua API. Este é apenas o começo da sua jornada no desenvolvimento de APIs.
Continue explorando, experimentando e construindo projetos cada vez mais complexos. Temos diversos conteúdos como este sobre JavaScript para você aprender cada vez mais e por seus conhecimentos em prática!
Hashtag Treinamentos
Para acessar publicações de JavaScript, clique aqui!
Posts mais recentes de JavaScript
- Vue.js: o que é, como funciona, vantagens e como usarDescubra o que é Vue.js, suas vantagens e como começar a usar esse framework moderno para criar projetos incríveis. Aprenda agora!
- O que é arquivo JSON e como usá-lo na prática? [Guia completo]Descubra o que é um arquivo JSON, sua estrutura, vantagens e como usá-lo na prática. Aprenda a criar, abrir e aplicar JSON em seus projetos!
- Como criar gráficos com Chart.js e React – Passo a passoVamos aprender passo a passo como criar gráficos com Chart.js e React, desde a configuração até a integração com uma API de vendas.
Posts mais recentes da Hashtag Treinamentos
- Funções do Copilot no Excel que vão TRANSFORMAR seu TrabalhoVocê sabia que o Copilot no Excel faz muito mais do que tirar dúvidas? Essa IA pode criar fórmulas, formatar dados e até gerar gráficos por você.
- Automação Whatsapp Web com com Python: Guia Completo para Enviar Mensagens com PyWhatKitVocê já imaginou programar o envio de mensagens com uma automação WhatsApp Web com poucas linhas de código?
- 30 Frases de Small Talk em Inglês: Tenha Conversas Naturais em InglêsDomine o Small Talk em Inglês com 30 frases práticas para conversas rápidas. Aprenda a pronúncia, os usos e dicas para falar com mais naturalidade.
Redator de conteúdo na Hashtag Treinamentos. Produzo textos didáticos sobre tecnologia, buscando informar e engajar o público de forma acessível e descomplicada.