XMLHttpRequest Nedir ?

Programcilarin yüzde doksani her ne kadar Microsoft ‘tu sevmesede (ki bu konuda bildigece.com ‘da bir tartisma baslatmistim) XMLHttpRequest Microsoft ‘un bize sundugu bir nimettir. Nimet dedim cünkü Ajax XMLHttpRequest sayesinde sanki bir masaüstü programi gibi davranir, istedigimiz herhangi bir islemi XMLHttpRequest sayesinde sayfa yenilemeden veya postback yapmadan saglariz. Microsoft ilk olarak Internet Explorer’ın 5.0 ‘da ActiveX bileşenini kullandi ve bu birlesen icinde bize XMLHttpRequest  nesnesi sunuldu yani ilk olarak XMLHttpRequest nesnesi ile Explorer’ın 5.0 ‘la tanistik akabinde Google tarafından (Google Suggest ile) popülerligi her gecen gün artti ve Mozilla 1.0 / Firefox, Opera 8+, Netscape 7, Safari 1.2 sürümlerine dahil edildi.

Bu kadar tarih bilgisinde sonra ne ise yarar bu XMLHttpRequest nesnesi deyip konuya derinlemesine dalalim ;

XMLHttpRequest sayfayi yenilemeye veya baska bir sayfaya gitmeye gerek kalmadan arka planda Client Side diye adlandirilan yani islemci tarafinda çalışır ve sizin isteginiz dogrultusunda bilgileri gönderir ve geri alir. Örnegin son zamanlarda bircok sitede görmüssünüzdür (örnegin wikipedia.org) arama kutusuna siz bir metin yazarsiniz ve her harfe tikladiginizda XMLHttpRequest nesnesi bilgiyi arkaplanda isler ve arama kutusuna benzer sonuclari cikarmaya calisir veya aradiginiz seyin devamini yazar. Tabi XMLHttpRequest ile yapilabilecekler bununla sinirli degil daha bircok sekilde kullaniliyor örnegin Google Maps; bildiniz gibi bu uygulama resimlerden olusur siz haritaya yakinlastirdiginizda daha yakindan cekilmis resim dosyasi ekranda görülür uzaklastikca daha uzaktan cekilmis resimi görürsünüz fakat bu islem ayni sayfa uzerinde gerceklesir ve hayretle bakariz.

Sanirim XMLHttpRequest nesnesinin ne oldugu konusunda bir fikir sahibi oldunuz simdi isin biraz daha teknik boyutuna girelim;

XMLHttpRequest ‘e mucizeler yarattiran sey tabiki Ajax ‘in bel kemigi Javascript ‘tir. Ilk zamanlar xml sistemiyle casilmasindan ötürü bu nesnenin adi XMLHttpRequest olsada su an Javascript ile cagirilip islem yapiyor.

Hadi bir XMLHttpRequest nesnesi cagiralim :)

nesne = new XMLHttpRequest();

Fakat Microsoft yine dedigim dedik diyor ve standartin disina cikiyor ve nesnesini Internet explorer icin su sekilde cagiriyoruz ;

nesne = new ActiveXObject("Microsoft.XMLHTTP");
ve bu iki farkli nesne olusturma tekniginden dolayi kodumuz biraz uzuyor ve asagidaki sonuc ortaya cikiyor ;
function durumaGoreNesne() {
var nesne;
var ziyaretciniTarayicisi = navigator.appName;
if(ziyaretciniTarayicisi == "Microsoft Internet Explorer"){
nesne = new ActiveXObject("Microsoft.XMLHTTP");
}else{
nesne = new XMLHttpRequest();
}
return nesne;
}
var nesnemiz = durumaGoreNesne();

Bu kodu dahada gelistirmemiz mümkün fakat ben basit haliyle bu sekilde kullanabiliriz.

Bir sonraki derste XMLHttpRequest ile örnek calismamizi yapacagiz.

Leave a Comment

Kategoriler

Tag cloud

Deneme

Deneme Deneme Deneme

Sayfalar

Son Yazılar

Son Yorumlar

Etiketler

Copyright � 2010 Flashcentury