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.