Navegadores, DNS e HTTP: o ciclo de vida de uma solicitação
Acompanhe uma URL desde a barra de endereço, passando pela resolução de DNS, conexão TCP e solicitação HTTP, até a resposta do servidor retornar ao navegador.
Navegadores, DNS e HTTP: o ciclo de vida de uma solicitação é uma aula grátis de Frontend Academy no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Frontend Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Frontend Academy inclui 4 aulas no total.
O que acontece quando você digita um endereço da web?
Sempre que você visita um site, seu navegador inicia uma sequência precisa de etapas. Entender essa sequência torna você um desenvolvedor melhor — você sabe onde as coisas podem dar errado e como acelerá-las.
Etapa 1 — Resolução de DNS
DNS (Sistema de Nomes de Domínio) é a lista telefônica da internet. Seu navegador pergunta a um resolvedor de DNS: "Qual endereço IP está associado a example.com?". O resolvedor verifica os caches e, se necessário, consulta servidores de nomes autoritativos.
# DNS lookup chain
# Browser cache → OS cache → Router cache → ISP resolver → Root NS → TLD NS → Authoritative NSEtapa 2 — Negociação TCP
Quando o IP é conhecido, o navegador abre uma conexão TCP usando uma negociação de três vias: SYN → SYN-ACK → ACK. Para HTTPS, isso é seguido por uma negociação TLS que define a criptografia.
Etapa 3 — A solicitação HTTP
O navegador envia uma solicitação HTTP pela conexão TCP. Ela inclui um método (GET, POST…), o caminho (/index.html), a versão do HTTP e cabeçalhos como Host e Accept.
GET /index.html HTTP/1.1
Host: example.com
Accept: text/html
User-Agent: Mozilla/5.0Etapa 4 — A resposta HTTP
O servidor processa a solicitação e envia uma resposta: um código de status (200 OK, 404 Não encontrado…), cabeçalhos de resposta (Content-Type, Cache-Control) e o corpo (HTML, JSON, bytes de imagem).
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Content-Length: 1234
<!DOCTYPE html>...HTTP/1.1 vs HTTP/2 vs HTTP/3
HTTP/1.1 envia uma solicitação por conexão. HTTP/2 multiplexa muitas solicitações em uma única conexão. HTTP/3 usa QUIC (baseado em UDP) para reduzir a latência, especialmente em redes móveis com perda de pacotes.
Códigos de status que você precisa conhecer
2xx = sucesso (200 OK, 201 Criado). 3xx = redirecionamento (301 Movido permanentemente, 304 Não modificado). 4xx = erro do cliente (400, 401, 403, 404). 5xx = erro do servidor (500, 502, 503).
HTTPS e TLS
HTTPS encapsula HTTP em TLS (Segurança da Camada de Transporte). TLS fornece: criptografia para que o tráfego não possa ser lido, autenticação por meio de certificados (você está realmente se comunicando com example.com) e integridade, para que os dados não sejam adulterados.
Cache: acelere visitas repetidas
As respostas podem incluir Cache-Control: max-age=86400 para que o navegador reutilize a cópia em cache por um dia. Os cabeçalhos ETag e Last-Modified permitem que o navegador verifique se a versão em cache ainda está atualizada.
Cache-Control: max-age=86400, immutable
ETag: "abc123"
Last-Modified: Wed, 01 Jan 2025 00:00:00 GMTCookies e sessões
Os servidores definem cookies com o cabeçalho Set-Cookie. O navegador os envia de volta automaticamente em cada solicitação para o mesmo domínio. As sessões geralmente consistem em um cookie que contém um ID de sessão e que o servidor associa aos dados do usuário.
CDN — Redes de distribuição de conteúdo
Uma CDN armazena cópias dos seus recursos em centros de dados espalhados pelo mundo. Os usuários fazem o download a partir do nó mais próximo, reduzindo a latência. Cloudflare, Fastly e AWS CloudFront são CDNs populares usadas pela maioria dos grandes sites.
Verificação rápida
Qual método HTTP é usado para solicitar uma página da web de um servidor?
Recapitulação: o ciclo de vida completo de uma solicitação
Endereço da web inserido → DNS resolve o domínio para um IP → conexão TCP (+ TLS) estabelecida → navegador envia uma solicitação HTTP → servidor responde com status + cabeçalhos + corpo → navegador renderiza a resposta. Cada etapa pode ser observada no painel Rede das DevTools.
Perguntas Frequentes
A aula “Navegadores, DNS e HTTP: o ciclo de vida de uma solicitação” é grátis?
Sim — o texto completo de “Navegadores, DNS e HTTP: o ciclo de vida de uma solicitação” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Frontend Academy, atualize para CoddyKit PRO. O curso de Frontend Academy inclui 4 aulas no total.
O que vou aprender em “Navegadores, DNS e HTTP: o ciclo de vida de uma solicitação”?
Acompanhe uma URL desde a barra de endereço, passando pela resolução de DNS, conexão TCP e solicitação HTTP, até a resposta do servidor retornar ao navegador. Você pratica Frontend Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Frontend Academy?
Nenhuma experiência prévia é necessária. Frontend Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.
Quanto tempo leva a aula “Navegadores, DNS e HTTP: o ciclo de vida de uma solicitação”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Frontend Academy?
Sim. Cada aula de Frontend Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Navegadores, DNS e HTTP: o ciclo de vida de uma solicitação
- HTML, CSS e JavaScript: a função de cada camada
- Como uma página é renderizada: análise, DOM, CSSOM, layout e pintura
- Ferramentas de desenvolvedor: abrindo e usando o DevTools