
RFC 10008: Método HTTP QUERY Permite Corpo de Requisição Seguro
Especialista em LLMs, AI Agents e Infraestrutura de IA

Especialista em LLMs, AI Agents e Infraestrutura de IA
O RFC 10008 introduz o método HTTP QUERY, que combina segurança e idempotência com a capacidade de lidar com corpos de requisição. Isso pode transformar o design de APIs modernas, especialmente em aplicações como GraphQL, ao substituir o uso inadequado do POST para consultas de leitura.
O RFC 10008, publicado em 2026, trouxe uma inovação no protocolo HTTP: o método QUERY. Esse método foi projetado para combinar as características de segurança e idempotência do GET, mas com a capacidade adicional de enviar corpos de requisição — algo que o GET não permite. Isso o torna uma solução eficiente para cenários onde é necessário transmitir informações complexas por meio de APIs.
Atualmente, o método POST é amplamente utilizado em APIs para lidar com consultas complexas, como em GraphQL. Contudo, o POST não é idempotente por design, o que pode gerar problemas em sistemas que precisam processar requisições repetidas ou trabalhar em ambientes distribuídos. O método QUERY resolve essa limitação ao possibilitar o envio de dados no corpo da requisição sem abrir mão da segurança e da idempotência.
O método QUERY tem o potencial de transformar o design e a operação de APIs modernas. Isso é especialmente relevante para APIs construídas com GraphQL, que frequentemente utilizam POST para enviar consultas complexas. Essa prática, no entanto, é inconsistente com a ideia de usar POST para operações que modificam dados.
Porém, a introdução do QUERY também demandará mudanças significativas em ferramentas e frameworks de desenvolvimento de APIs. Soluções populares como Express.js, Flask e ASP.NET Core precisarão ser ajustadas para suportar adequadamente o novo método HTTP.
Apesar de suas vantagens, a implementação do método QUERY traz desafios, principalmente relacionados ao cache. Como ele permite a inclusão de um corpo na requisição, a definição de chaves únicas de cache para tais requisições pode ser complexa. Isso é particularmente crítico em aplicações que lidam com corpos extensos ou conteúdos binários.
Outro desafio está na adaptação de frameworks e bibliotecas para suportarem o QUERY. Embora o .NET 11 Preview 4 já tenha implementado suporte experimental, outras ferramentas populares ainda precisam de atualizações para garantir a compatibilidade.
O método HTTP QUERY, conforme definido pelo RFC 10008, representa uma evolução significativa no design de APIs. Ele resolve problemas de longa data, como o uso inadequado do método POST para operações de leitura em sistemas como GraphQL. No entanto, sua adoção exigirá esforços consideráveis para superar desafios técnicos e adaptar ferramentas existentes.
Empresas que adotarem rapidamente o QUERY podem obter vantagens competitivas ao oferecer APIs mais robustas, seguras e eficientes. No entanto, a transição será gradual e dependerá da prontidão das ferramentas e do desenvolvimento de novas melhores práticas pela comunidade técnica.
O método HTTP QUERY, definido pelo RFC 10008, é um método seguro e idempotente que permite o envio de corpos de requisição, combinando as vantagens dos métodos GET e POST.
O QUERY permite substituir o uso inadequado do método POST para requisições de leitura no GraphQL, garantindo idempotência e permitindo o envio de consultas complexas no corpo da requisição.
Os principais desafios incluem a criação de chaves de cache para requisições com corpo e a adaptação de frameworks e bibliotecas, como Express.js e Flask, para suportar o novo método.
💡 Dica Pro: Ao implementar o método QUERY, use algoritmos de hash para gerar chaves de cache baseadas nos corpos das requisições. Isso pode simplificar o gerenciamento de cache para APIs que utilizam corpos extensos ou complexos.