XHR İsteklerinin Bilinmesi Gereken Bilgileri

XMLHttpRequest (XHR), web uygulamalarının arka planda veri alışverişini sağlar. İstek başlatma, yanıt işleme ve hata yönetimi gibi temel işlevleri öğrenin.

Efe Demir

Efe Demir

5 June 2025

XHR İsteklerinin Bilinmesi Gereken Bilgileri

Modern web, ilgi çekici ve duyarlı bir kullanıcı deneyimi talep eder. Bunu başarırken, XMLHttpRequest (XHR) nesnesi kritik bir rol oynar. Asenkron iletişimin temeli olarak işlev gören XHR, web uygulamalarının arka planda sunucularla sorunsuz bir şekilde veri alışverişinde bulunmasını sağlayarak, kullanıcı etkileşimini bozan tam sayfa yeniden yüklemelerine olan ihtiyacı ortadan kaldırır.

💡
Bir API geliştirme platformu mu arıyorsunuz? Bugün Apidog'u denemeyi düşünün.

Apidog, kullanıcıları tüm yaşam döngüsü için gerekli tüm işlevlerle donatan, hepsi bir arada bir API geliştirme platformudur. API'ler oluşturabilir, test edebilir, taklit edebilir ve belgeleyebilirsiniz - API geliştirme için eksiksiz bir pakettir!

Apidog'un işlevleri hakkında daha fazla bilgi edinmek isterseniz,

Bu makale, XHR'nin temel işlevlerini derinlemesine inceleyerek, geliştiricilere dinamik ve ilgi çekici web deneyimleri oluşturmak için gücünden nasıl yararlanacakları konusunda kapsamlı bir anlayış sunmaktadır.

Bu makaleyi tamamen anlamak için, önce XHR (XMLHttpRequest) olan temel çerçeveden geçelim.

XHR Nedir?

XMLHttpRequest anlamına gelen XHR, JavaScript kodunun bir web sunucusuyla iletişim kurmasını sağlayan, web tarayıcılarında yerleşik bir nesnedir.

XHR birkaç adımda çalışır:

Kısacası, XHR, tam bir sayfa yenilemesi gerektirmeden sunucularla veri alışverişinde bulunabilen dinamik web sayfalarını etkinleştirir. Fetch API adlı, benzer işlevselliği elde etmenin daha yeni ve daha modern bir yolu vardır, ancak XHR, eski tarayıcılarla geriye dönük uyumluluk için hala yaygın olarak kullanılmaktadır.

XHR İstekleri Kavramı

Süreç

Oluşturma

Bir web sayfasının JavaScript kodu, bir XMLHttpRequest nesnesi oluşturarak bir XHR isteği başlatır.

Yapılandırma

Komut dosyası, aşağıdaki gibi ayrıntıları belirterek isteği yapılandırır:

İsteği Gönderme

open() ve send() yöntemleri, isteği sunucuya göndermek için kullanılır.

Sunucu İşleme

Sunucu, isteği HTTP yöntemine göre işler ve veri sağlar.

Yanıt

Sunucu, tarayıcıya veri (örneğin, JSON, HTML) ve durum kodları (örneğin, başarı için 200) içeren bir yanıt gönderir.

Olay İşleme

Tarayıcının JavaScript kodu, daha önce tanımlanan olay dinleyicileri (özellikle onreadystatechange) aracılığıyla yanıtı işleyebilir. Bu, komut dosyasının yanıt verilerini ayrıştırmasına ve web sayfasını buna göre güncellemesine olanak tanır.

Bir XHR İsteği Çağırma Konusunda Adım Adım Kılavuz

Bu bölüm, bir XHR isteğinin nasıl çağrılacağına dair basitleştirilmiş bir JavaScript kılavuzu içerir. Bu, istemci kodlamasını içerdiğinden, bir IDE (Entegre Geliştirme Ortamı) hazırlamanız gerekecektir!

1. Bir XMLHttpRequest Nesnesi Oluşturun

JavaScript

let xhr = new XMLHttpRequest();

Bu, sunucuyla etkileşim kurmanızı sağlayan yeni bir nesne oluşturur.

2. İsteği Yapılandırın

İstek ayrıntılarını tanımlamak için open() yöntemini kullanın:

Örnek:

xhr.open("GET", "https://api.example.com/data", true);  // Belirtilen URL'ye GET isteği, asenkron

3. İsteğe Bağlı Başlıkları Ayarlayın (Varsa)

İstek için ek başlıklar tanımlamak için setRequestHeader() yöntemini kullanın. Bu, sunucunun gereksinimlerine bağlı olarak gerekli olabilir.

Örnek (veri biçimini JSON olarak belirtme):

xhr.setRequestHeader("Content-Type", "application/json");

4. Gönderilecek Verileri Hazırlayın (Varsa)

POST veya PUT gibi yöntemler için, sunucuya gönderilecek verileri hazırlamanız gerekebilir. Bu veri biçimi sunucuya bağlıdır. Bir dize, JSON nesnesi veya başka bir şey olabilir. Bu verileri ayarlamaya yönelik belirli yöntem, biçime bağlıdır.

5. İsteği Gönderin

Her şey yapılandırıldıktan sonra, isteği başlatmak için send() yöntemini kullanın:

xhr.send(dataToSend); // dataToSend, HTTP yöntemine bağlı olarak isteğe bağlıdır

6. Yanıtı İşleyin

Sunucunun yanıtını olay dinleyicileri kullanarak işlemeniz gerekecektir:

Başarı ve hata senaryolarını işlemek için onreadystatechange kullanan bir örnek:

xhr.onreadystatechange = function() {
  if (xhr.readyState === 4) {  // İstek tamamlandı
    if (xhr.status === 200) {  // Başarılı
      console.log(xhr.responseText);  // Yanıt verilerine erişin (genellikle bir dize)
      // Yanıt verilerini burada işleyin (örneğin, web sayfasını güncelleyin)
    } else {
      console.error("Error:", xhr.statusText);
    }
  }
};

Apidog - XHR Çerçevesini API'lerle Entegre Edin

Artık istemci kodu örneğiniz hazır olduğuna göre, diğer insanların (veya kendinizin) kullanması için bir API oluşturmayı düşünebilirsiniz! Bu iş için mükemmel bir araç, endüstri düzeyinde API'ler üretmek için kapsamlı bir API geliştirme platformu olan Apidog'dur!

apidog mock interface
button

Apidog Kullanarak Kendi REST API Uç Noktalarınızı Tasarlamak

Apidog, kullanıcılara en kaliteli API'leri üretmek için basit ama sezgisel bir platform sağlar! Yeni geliştirme ortamına alışmak uzun sürmeyecek.

new api apidog

Yukarıdaki resimde gösterildiği gibi, New API düğmesine basarak başlayın.

add details new api apidog

Bu bölüm, API'nizin eylemlerini tam olarak tasarlamanıza olanak tanır. Şunları detaylandırabilirsiniz:

Apidog Kullanarak API'leri Test Etme

İlk adım, test etmek istediğiniz belirli API uç noktasını girmektir. Test ettiğiniz belirli API için gerekirse parametreler gibi ek ayrıntılar ekleyin.

Bir URL'de birden fazla parametre kullanma konusunda emin değilseniz, bu makale (bağlantı dahil değil), daha büyük veri kümeleri içindeki tam kaynağa nasıl ulaşacağınız konusunda size rehberlik edebilir!

apidog response view

Send düğmesine bastıktan sonra, API'nin yanıtını ayrıntılı olarak görüntüleyebilirsiniz. API yanıtı için durum kodunun başarılı bir isteği gösterip göstermediğini görün ve istemci kodunuzun arka uç sunucularından gelen verileri işleyebilmesi için ham isteği görüntüleyin.

button

Sonuç

XHR istekleri, dinamik web deneyimlerini şekillendirmede çok önemli bir rol oynamıştır. Tam sayfa yeniden yüklemeleri olmadan verileri asenkron olarak getirme yetenekleri, web uygulamalarının sunucularla etkileşim biçiminde devrim yaratmıştır. Fetch API gibi daha yeni teknolojiler avantajlar sunarken, XHR yaygın olarak desteklenmeye devam ediyor ve etkileşimli web özellikleri oluşturmak için sağlam bir temel sağlıyor. XHR isteklerini anlamak, geliştiricileri bu çok yönlü araçtan yararlanmaya ve sorunsuz bir kullanıcı deneyimi sunan kullanıcı dostu web uygulamaları oluşturmaya teşvik eder.

Web geliştirme gelişmeye devam ettikçe, XHR istekleri muhtemelen daha yeni gelişmelerle birlikte var olmaya devam edecektir. XHR'de ustalaşarak, geliştiriciler çeşitli web geliştirme senaryolarında uygulanabilir değerli beceriler kazanır ve zengin ve ilgi çekici web uygulamaları oluşturmalarına olanak tanır.

Explore more

Fathom-R1-14B: Hindistan'dan Gelişmiş Yapay Zeka Muhakeme Modeli

Fathom-R1-14B: Hindistan'dan Gelişmiş Yapay Zeka Muhakeme Modeli

Yapay zeka hızla gelişiyor. FractalAIResearch/Fathom-R1-14B, 14.8 milyar parametreyle matematik ve genel akıl yürütmede başarılı.

5 June 2025

Mistral Code: İşletmeler için En Özelleştirilebilir Yapay Zeka Destekli Kodlama Asistanı

Mistral Code: İşletmeler için En Özelleştirilebilir Yapay Zeka Destekli Kodlama Asistanı

Mistral Code'u keşfedin: Kurumsal kullanıma özel, en özelleştirilebilir yapay zeka destekli kodlama asistanı.

5 June 2025

Claude Code'un 2025'te Yapay Zeka Kodlamasını Nasıl Dönüştürdüğü

Claude Code'un 2025'te Yapay Zeka Kodlamasını Nasıl Dönüştürdüğü

Claude Code, 2025'te yapay zeka destekli kodlamayı nasıl devrimleştiriyor? Özelliklerini, kullanımını ve Windsurf kısıtlamalarından sonra neden popüler olduğunu öğrenin. Geliştiriciler için okunması gereken!

5 June 2025

API Tasarım-Öncelikli Yaklaşımı Apidog'da Uygulayın

API'leri oluşturmanın ve kullanmanın daha kolay yolunu keşfedin