Sobes.tech
Junior — Middle

Por que não se prevê o envio do corpo da mensagem nas requisições HTTP GET?

sobes.tech IA

Resposta da IA

O método GET em HTTP destina-se a solicitar um recurso sem alterar o estado do servidor. A transmissão do corpo da mensagem em pedidos GET não é prevista por várias razões:

  • Padrões HTTP: a especificação HTTP/1.1 não proíbe o corpo em GET, mas não define a sua semântica, pelo que os servidores e proxies podem ignorá-lo ou processá-lo incorretamente.
  • Idempotência e cache: os pedidos GET devem ser idempotentes e passíveis de cache, e o corpo pode violar essas propriedades.
  • Prática e compatibilidade: a maioria dos clientes e servidores não suporta corpo em GET, o que pode levar a erros.

Por isso, para transmitir dados, geralmente usam-se parâmetros na URL (string de consulta) ou outros métodos, como POST.