Njia ya HTTP tuliyokuwa tukiigushi kwa miaka 16
Watengenezaji wa backend wanakabiliwa na tatizo la mara kwa mara na search endpoints.
Unataka kutumia GET kwa sababu utafutaji ni operesheni ya kusoma. Lakini vichujio vyako vya utafutaji vinakuwa vikubwa sana. URL yako inafikia herufi elfu mbili. Proxies hukata ombi lako. Utafutaji wako unaharibika.
Unabadilisha kwenda POST ili kutatua kikomo hicho. Hii inafanya kazi, lakini ni uongo. POST inaiambia kila proxy na cache kwamba unabadilisha data. Hii inazuia caching yote. Unapoteza kasi ya GET.
Kwa miaka kumi na sita, hatukuwa na suluhisho la kati.
Mnamo Juni 2026, IETF ilichapisha RFC 10008. Hii inatambulisha njia ya QUERY. Ni njia mpya ya kwanza ya HTTP tangu mwaka 2010.
QUERY inaunganisha sehemu bora zaidi za GET na POST:
• Inabeba mwili wa ombi (request body) kwa ajili ya vichujio tata. • Ni salama (safe), ikimaanisha seva haibadili hali (state). • Ni idempotent, ikimaanisha unaweza kuikimbiza mara mbili ukiwa na matokeo yaleyale. • Inaweza kuhifadhiwa kwenye cache (cacheable), ikiruhusu CDNs kuhifadhi majibu.
Ombi la QUERY linaonekana hivi:
QUERY /products HTTP/1.1
Host: api.shop.example
Content-Type: application/json
{
"filter": { "category": "boots", "inStock": true },
"sort": "-price",
"limit": 20
}
RFC mpya pia inaongeza kichwa cha Accept-Query. Hii inaruhusu API kukuambia ni mifumo gani ya query inayoiunga mkono.
Onyo kwa watengenezaji:
Kuhifadhi ombi la QUERY kwenye cache ni tofauti na ombi la GET. Cache ya GET hutumia URL kama funguo (key). Cache ya QUERY lazima itumie mwili wa ombi kama sehemu ya funguo. Ikiwa miundombinu yako haielewi hili, mtumiaji mmoja anaweza kuona matokeo ya utafutaji ya faragha ya mtumiaji mwingine.
Usikimbilie kuitumia hii kwenye production bado. Ecosystem inahitaji muda ili kuendana na mabadiliko haya.
• Vivinjari (Browsers) bado havitumii QUERY kwenye fetch() bado.
• Fomu za HTML zinaunga mkono GET na POST pekee.
• Milango mingi ya API (API gateways) na WAFs itakataa njia zisizojulikana.
Sanifu API yako ukiwa na QUERY akilini, lakini endelea kutumia njia zako za POST kwa sasa.
QUERY inamaliza maridhiano ya muda mrefu. Inakuwezesha kuuliza maswali tata bila kudanganya mtandao.
Je, unangoja ecosystem iendane na mabadiliko, au unajaribu QUERY sasa hivi?
Source: https://dev.to/arya_koste_5845807df94776/query-the-http-method-weve-been-faking-for-16-years-f9i
