🌐 Documentação: HTTP e Códigos de Status

❓ O que é HTTP?

HTTP (Hypertext Transfer Protocol) é o protocolo de comunicação que permite a transferência de dados entre clientes (como navegadores) e servidores na web. Ele funciona no modelo cliente-servidor, onde o cliente envia uma solicitação (request) e o servidor responde com uma resposta (response).

📌 É a base da navegação na internet — cada clique em um link, cada carregamento de página, cada envio de formulário envolve uma troca via HTTP.


📦 O que há em uma solicitação HTTP?

Uma solicitação HTTP é composta por três partes principais:

  1. Linha de solicitação
    Contém:

    • Método HTTP (ex: GET, POST)
    • Caminho do recurso (ex: /index.html)
    • Versão do protocolo (ex: HTTP/1.1)
  2. Cabeçalhos de solicitação
    Informações adicionais como:

    • Tipo de conteúdo aceito (Accept)
    • Idioma preferido (Accept-Language)
    • Agente do usuário (User-Agent)
    • Autenticação (Authorization)
  3. Corpo da mensagem (opcional)
    Usado em métodos como POST ou PUT para enviar dados ao servidor (ex: formulários, JSON, arquivos).


🧭 O que é um método HTTP?

Os métodos HTTP indicam a ação que o cliente deseja realizar sobre um recurso. Os principais são:

Método Descrição
GET Solicita dados de um recurso
POST Envia dados para o servidor
PUT Atualiza um recurso existente
DELETE Remove um recurso
HEAD Solicita apenas os cabeçalhos da resposta
OPTIONS Consulta as opções disponíveis para um recurso
PATCH Aplica modificações parciais

🔹 Cada método tem características como segurança, idempotência e cacheabilidade.


🧾 O que são cabeçalhos de solicitação HTTP?

Os cabeçalhos de solicitação HTTP são pares chave-valor que fornecem informações adicionais sobre a requisição.

Exemplos comuns:

🔍 Cabeçalhos ajudam o servidor a entender como responder adequadamente à solicitação.


📊 Códigos de Status HTTP

Os códigos de status HTTP são números de três dígitos que indicam o resultado de uma solicitação. Eles são agrupados em cinco categorias:

Código Categoria Descrição
1xx Informativo A solicitação foi recebida e está sendo processada
2xx Sucesso A solicitação foi concluída com sucesso (200 OK)
3xx Redirecionamento O recurso foi movido ou redirecionado (301, 302)
4xx Erro do cliente Problema na solicitação (404 Not Found, 403 Forbidden)
5xx Erro do servidor Falha interna no servidor (500 Internal Server Error)

📌 O "xx" representa variações dentro de cada categoria (ex: 404, 403, 502).