If you’ve ever built a REST API or integrated a GraphQL endpoint, you’ve inevitably slammed face-first into the most frustrating compromise in software architecture: The GET vs. POST dilemma.
You need to fetch data. Your search parameters require a massive, deeply nested JSON payload.
Semantically, fetching data should always be a GET request. But when your search parameters require a massive, deeply nested JSON payload, you hit URL length limits. The solution? We all give up, break RESTful principles, and use POST.
By doing that, we sacrifice native HTTP edge caching and automatic network retries. We've been accepting this broken standard for 25 years.
𝗡𝗼𝘁 𝗮𝗻𝘆𝗺𝗼𝗿𝗲. 𝗘𝗻𝘁𝗲𝗿 𝘁𝗵𝗲 𝗛𝗧𝗧𝗣 𝗤𝗨𝗘𝗥𝗬 𝗠𝗲𝘁𝗵𝗼𝗱 (𝗥𝗙𝗖 𝟭𝟬𝟬𝟬𝟴).
Just standardized by the IETF, QUERY is the most significant addition to HTTP semantics in over a decade. It gives developers exactly what we've always wanted: 𝗮 𝘀𝗮𝗳𝗲, 𝗶𝗱𝗲𝗺𝗽𝗼𝘁𝗲𝗻𝘁 𝗿𝗲𝗾𝘂𝗲𝘀𝘁 𝘁𝗵𝗮𝘁 𝗼𝗳𝗳𝗶𝗰𝗶𝗮𝗹𝗹𝘆 𝘀𝘂𝗽𝗽𝗼𝗿𝘁𝘀 𝗮 𝗽𝗮𝘆𝗹𝗼𝗮𝗱 𝗯𝗼𝗱𝘆.
Here is why QUERY is about to change how we build systems:
𝗡𝗮𝘁𝗶𝘃𝗲 𝗖𝗮𝗰𝗵𝗶𝗻𝗴: CDNs can now hash the request body alongside the URL, allowing you to safely edge-cache massive database searches.
𝗘𝗻𝗵𝗮𝗻𝗰𝗲𝗱 𝗦𝗲𝗰𝘂𝗿𝗶𝘁𝘆: Sensitive PII search filters are no longer exposed in plain-text GET URLs or server logs.
𝗧𝗵𝗲 𝗚𝗿𝗮𝗽𝗵𝗤𝗟 𝗙𝗶𝘅: GraphQL queries no longer have to tunnel through non-cacheable POST requests.
The era of cramming complex arrays into query strings is over. The standard has arrived.
I just published a complete, deep-dive guide on how RFC 10008 works under the hood, how it impacts legacy infrastructure, and how you can start dual-routing your APIs today.
𝗥𝗲𝗮𝗱 𝘁𝗵𝗲 𝗳𝘂𝗹𝗹 𝗯𝗿𝗲𝗮𝗸𝗱𝗼𝘄𝗻 𝗵𝗲𝗿𝗲: https://medium.com/p/dd314a39e6f9
How long do you think it will take for your stack's WAFs and legacy gateways to fully support this? Let's debate in the comments.

Top comments (0)