🚀 Oferta especial: 60% OFF no CrazyStack - Últimas vagas!Garantir vaga →
Node.js

Como criar seu primeiro servidor HTTP com Node.js do zero

Descubra como iniciar seu primeiro projeto em Node.js, entender os principais módulos e aprender os fundamentos para levantar seu servidor HTTP com JavaScript puro.

CrazyStack
12 min de leitura
Node.jsJavaScriptBackendServidor HTTPTutorial

Por que isso é importante

Entender como criar um servidor HTTP com Node.js é a base para qualquer desenvolvedor backend moderno. Aprender o fluxo de criação, explorar módulos internos e levantar seu próprio servidor permite que você dê os primeiros passos no universo da programação JavaScript do lado do servidor, abrindo portas para APIs, microsserviços e aplicações de alta performance.

Entendendo o Ambiente do Node.js

O Node.js possibilita executar JavaScript fora do navegador, fornecendo uma plataforma completa para desenvolver aplicações web rápidas e escaláveis. Ao instalar o Node, você ganha acesso a diversos módulos embutidos, que fornecem ferramentas fundamentais para manipulação de arquivos, criptografia, servidores e muito mais.

ℹ️Dica

Aproveite os módulos já inclusos no Node.js para acelerar o desenvolvimento sem depender de bibliotecas externas, principalmente nos primeiros projetos.

Criando a Estrutura Inicial do Projeto

O início de todo projeto Node.js pode ser simples e descomplicado. Basta criar um arquivo chamado server.js na raiz do seu projeto. Esse será o ponto central para iniciar o servidor e experimentar os recursos do Node.

⚠️Atenção

Sempre verifique se o Node.js está instalado corretamente antes de começar. Use o comando node -v para conferir a versão instalada.

Como importar Módulos no Node.js

A força do Node reside na quantidade de módulos que ele traz por padrão. Para importar qualquer módulo nativo, utilize a função require(). É assim que você ganha acesso ao http, fs e outros recursos diretamente no seu arquivo server.js.

ℹ️Atenção

Utilize sempre os módulos nativos quando possível para garantir máxima performance e facilidade de manutenção.

Módulos Essenciais do Node

O Node oferece módulos essenciais que cobrem a maioria das necessidades iniciais do desenvolvimento backend:

http

Fornece funcionalidades para criar servidores HTTP e lidar com requisições web

Saiba mais →

fs

Permite criar, ler e manipular arquivos e pastas diretamente pelo código

Saiba mais →

crypto

Oferece métodos para criptografia, hashes e geração de tokens de segurança

Saiba mais →

Primeiro Contato com o Módulo HTTP

Para criar um servidor HTTP no Node.js, importe o módulo http. A partir dele, pode-se acessar funções que permitem inicializar e configurar o servidor do jeito que preferir.

Utilizando a Função createServer

O coração do servidor Node.js é a função createServer, disponibilizada pelo módulo http. Com ela, você define como o servidor responde às requisições feitas pelo navegador ou qualquer cliente HTTP.

⚠️Atenção ao código

Ao usar createServer, lembre-se de definir um handler para lidar com as requisições e enviar respostas adequadas.

Passo a Passo: Criando o servidor HTTP

1
Passo 1: Crie um arquivo chamado server.js em seu projeto.
2
Passo 2: Importe o módulo http usando const http = require('http').
3
Passo 3: Utilize http.createServer() e defina um callback para tratar as requisições recebidas.
4
Passo 4: Chame o método listen para fazer o servidor escutar uma porta específica, como 3000.

Dica extra

Ao acessar localhost:3000 no navegador, você já verá a resposta enviada pelo seu próprio servidor Node!

Como o Navegador se Conecta ao Servidor

Quando seu servidor está em execução, o navegador funciona como um cliente e envia requisições para o endereço local e porta definidos. O Node responde a cada solicitação através do callback cadastrado no createServer, enviando textos, arquivos ou qualquer conteúdo.

Comparando Módulos Nativos e de Terceiros

Módulos Nativos do Node.js

Disponíveis por padrão, sem necessidade de instalação adicional, cobrem a maioria dos cenários iniciais.

Prós
  • Velocidade
  • Baixo overhead
  • Documentação oficial
Contras
  • Menos funcionalidades avançadas
  • Mais código manual

Módulos de Terceiros (como Express)

Bibliotecas externas podem simplificar tarefas repetitivas e adicionar abstrações prontas.

Prós
  • Facilidade de uso
  • Funções específicas prontas
  • Comunidade ampla
Contras
  • Maior dependência externa
  • Pode aumentar tamanho do projeto

Erros comuns ao começar no Node.js

Erro típico

Tentar rodar server.js sem Node instalado gerará um erro de comando não encontrado. Instale o Node.js primeiro e reinicie o terminal.

⚠️Atenção com portas

Escolher uma porta já usada por outro processo impedirá seu servidor de rodar. Use portas como 3000, 4000 ou maiores para evitar conflitos.

ℹ️Info

Sempre pare o servidor com Ctrl+C no terminal antes de rodar novamente, evitando múltiplos processos travando a porta.

Evoluindo: Próximos passos após levantar o servidor

Após o primeiro servidor online, explore a leitura e escrita de arquivos com fs, experimente gerar hashes com crypto e, depois, avance para frameworks como Express para facilitar rotas e middlewares.

Checklist de Implementação

Node.js instalado e testado
Arquivo server.js criado
Importação correta dos módulos http, fs e crypto
Servidor iniciado na porta desejada
Navegador conectado ao servidor e recebendo resposta

Domine React e Node com o CrazyStack

Aprenda técnicas avançadas de React com nosso curso completo