HTTP 20 Yıl Sonra İlk Yeni Metoduna Kavuştu

Bunu muhtemelen daha önce yapmışsınızdır.

Ürün araması yapmanız gerekiyor. Arama filtreleriniz bir URL için çok büyük. Bunu düzeltmek için bir POST isteği kullanıyorsunuz.

Çalışıyor. Ama bu bir yalan. Sadece veri okurken HTTP'ye veriyi değiştirdiğinizi söylüyorsunuz.

Haziran 2026'da IETF, RFC 10008'i yayınladı. Bu belge, QUERY adı verilen yeni bir HTTP metodunu tanımlıyor. Bu, yirmi yılı aşkın süredir gelen ilk yeni metoddur. Yukarıda belirtilen sorunu tam olarak çözüyor.

Mevcut Sorun

GET, veri okumak için harikadır. Güvenlidir ve önbelleklenebilir. Ancak bir istek gövdesi (request body) taşıyamaz. URL'lerin ayrıca karakter sınırları vardır.

POST bir gövde taşır. Ancak HTTP, POST'un durumu değiştirdiğini varsayar. Bu, otomatik önbelleğe almayı ve güvenli yeniden denemeleri kaybettiğiniz anlamına gelir. Eğer bir POST isteği zaman aşımına uğrarsa, onu doğrudan tekrar deneyemezsiniz. Sunucunun halihazırda bir şeyi değiştirip değiştirmediğini bilemezsiniz.

Çözüm: QUERY

QUERY, gövdesi olan bir GET isteğidir. İki garanti sağlar:

  • Güvenlidir. Veriyi değiştirmez.
  • Idempotenttir. İki kez gönderilmesi, bir kez gönderilmesiyle aynı sonucu verir.

Bugün nasıl kullanılır

Bunu şu anda Axios veya Fetch ile kullanabilirsiniz.

Axios örneği:

axios.request({
  method: 'QUERY',
  url: '/api/products',
  data: { category: 'shoes', maxPrice: 100 }
})

Fetch örneği:

fetch('/api/products', {
  method: 'QUERY',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({ category: 'shoes', maxPrice: 100 })
})

Sırada ne var?

Geçiş bir gecede gerçekleşmeyecek. İşte yol haritası:

  • Altyapı: Nginx ve Apache bu istekleri geçirecektir. QUERY metoduna izin vermek için WAF veya güvenlik kurallarınızı güncellemeniz gerekebilir.
  • Frameworkler: Spring, Rails ve Express'in 2026 ve 2027 boyunca yerel destek eklemesini bekleyin.
  • CDN'ler: Cloudflare ve Akamai mühendisleri bunun yazılmasına yardımcı olduğu için hızlı CDN desteği bekleyin. Bu, önbelleğe almayı çok daha kolaylaştırır.

Bu, kodunuz için neden önemli?

  1. Otomatik Yeniden Denemeler: QUERY idempotent olduğu için mobil uygulamalar ve istemciler başarısız istekleri güvenli bir şekilde tekrar deneyebilir.
  2. Daha İyi Önbelleğe Alma: CDN'ler, QUERY yanıtlarını gövdeye (body) göre önbelleğe alabilir. Kendi yazdığınız Redis önbellek katmanlarını silebilirsiniz.
  3. Daha Temiz URL'ler: Artık karmaşık JSON verilerini URL sorgu parametrelerine sıkıştırmanıza gerek yok.
  4. Semantik API'ler: API dokümantasyonunuz daha net hale gelir. Geliştiriciler hangi uç noktaların (endpoints) veri okuduğunu ve hangilerinin veri yazdığını tam olarak bilecekler.

Mevcut POST uç noktalarınızı denetleyerek ekibinizi hazırlayın. Hangilerinin sadece veri okuduğunu belirleyin. Bunlar gelecekteki QUERY uç noktalarınız olacak.

Kaynak: https://dev.to/andresclua/http-just-got-its-first-new-method-in-20-years-heres-why-you-should-care-2h5p