Pengembangan Teknologi 11

Senin, 14 Juni 2010 05.46 Diposkan oleh FERRY BLOG

AJAX

Dari Wikipedia bahasa Indonesia, ensiklopedia bebas

Langsung ke: navigasi, cari

Asynchronous JavaScript and XMLHTTP, atau disingkat AJaX, adalah suatu teknik pemrograman berbasis web untuk menciptakan aplikasi web interaktif. Tujuannya adalah untuk memindahkan sebagian besar interaksi pada komputer web surfer, melakukan pertukaran data dengan server di belakang layar, sehingga halaman web tidak harus dibaca ulang secara keseluruhan setiap kali seorang pengguna melakukan perubahan. Hal ini akan meningkatkan interaktivitas, kecepatan, dan usability. Ajax merupakan kombinasi dari:

  • DOM yang diakses dengan client side scripting language, seperti VBScript dan implementasi ECMAScript seperti JavaScript dan JScript, untuk menampilkan secara dinamis dan berinteraksi dengan informasi yang ditampilkan
  • Objek XMLHTTP dari Microsoft atau XMLHttpRequest yang lebih umum di implementasikan pada beberapa browser. Objek ini berguna sebagai kendaraan pertukaran data asinkronus dengan web server. Pada beberapa framework AJAX, element HTML IFrame lebih dipilih daripada XMLHTTP atau XMLHttpRequest untuk melakukan pertukaran data dengan web server.
  • XML umumnya digunakan sebagai dokumen transfer, walaupun format lain juga memungkinkan, seperti HTML, plain text. XML dianjurkan dalam pemakaian teknik AJaX karena kemudahan akses penanganannya dengan memakai DOM
  • JSON dapat menjadi pilihan alternatif sebagai dokumen transfer, mengingat JSON adalah JavaScript itu sendiri sehingga penanganannya lebih mudah

Seperti halnya DHTML, LAMP, atau SPA, Ajax bukanlah teknologi spesifik, melainkan merupakan gabungan dari teknologi yang dipakai bersamaan. Bahkan, teknologi turunan/komposit yang berdasarkan Ajax, seperti AFLAX sudah mulai bermunculan.

Contoh sederhana Ajax

Nah, untuk lebih memahami definisi ajax di atas, berikut contoh sederhana penggunaan aplikasi ajax.
Sebelumnya, anda harus menginstall web server, PHP, MySql. Aplikasi yang sudah lengkap dan bias digunakan adalah XAMPP, silahkan download di website resminya yang versi terbarunya xampp di www.xampp.com
Saya anggap pembaca sudah memahami cara instalasi xampp, jika belum silahkan googling aja.

Anggap, struktur webservernya seperti berikut :
Buat folder latihanajax di folder xampp di c:\xampp\htdocs\latihanajax
Nanti seluruh file latihan ada folder tersebut.
Buat file latsatu.html




Latihan Satu AJAX








Coba anda tuliskan sebuah text pada form di bawah






Buat file latsatu.js



var xmlHttp = bikinXmlHttp();

function bikinXmlHttp() {
var xmlHttp;
if (window.ActiveXObject) {
try { //jika IE
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
xmlHttp = false;
}
} else {
try {
xmlHttp = new XMLHttpRequest();
} catch (e) {
xmlHttp = false;
}
}
if (!xmlHttp) {
alert("Gagal dalam membuat xmlHttpRequest Object");
} else {
return xmlHttp;
}
}

function proses() {
if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0) {
teks = encodeURIComponent(document.getElementById("teksInput").value);
xmlHttp.open("GET", "latsatu.php?teks="+teks, true);
xmlHttp.onreadystatechange = responServer;
xmlHttp.send(null);
} else {
setTimeout('proses',1000); //jika sibuk ulangi dalam 1 detik
}
}

function responServer() {
if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
xmlResponse = xmlHttp.responseXML;
xmlDocumentElement = xmlResponse.documentElement;
hasilTeks = xmlDocumentElement.firstChild.data;

document.getElementById("hasilProses").innerHTML = hasilTeks;
setTimeout('proses()',1000);
} else {
alert("Ada problem, method statusText adalah "+xmlHttp.statusText);
}
}
}

Buat file latsatu.php


< ?php header('Content-type:Text/xml'); echo '';

echo '';
$teks = htmlentities($_GET[teks]);

if (!empty($teks)) {
echo 'Teks yang anda masukkan adalah : '.$teks;
} else {
echo 'Silahkan Masukkan teks pada kotak input di atas';
}
echo '
';
?>

Kalau sudah, silahkan buka web browser anda, pakai IE dan firefox
Ketikkan di url nya, http://localhost/latsatu.html
Maka hasilnya adalah sebagai berikut :
Jika kita memasukkan teks di form, otomatis teks tersebut akan dituliskan di bawahnya. Kenapa bisa begitu? Di bawah ini saya jelaskan keterangan programnya.
Keterangan listing program :



Dokumen latsatu.html adalah file HTML standard

Untuk memanggil javascript di file eksternal.

Pada input di atas, kita definisikan onkeyup='proses()' yang artinya, jika pointer/cursor kita arahkan di dalam form maka akan memanggil fungsi javascript process(). Sedangkan id="teksInput" digunakan untuk menandai bahwa form ini mempunya id yang bernama teksInput.


Kita definisikan id="hasilProses" untuk menampilkan hasil dari fungsi proses().

Dokumen latsatu.js
Membuat object xmlHttp untuk melakukan transaksi data, karena antara IE dan browser yang lain beda, maka kita definisikan variabel xmlHttp adalah sebuah fungsi yang mengecek apakah browser yang dipakai IE atau bukan.
Untuk IE, xmlHttp di definisikan oleh ActiveXObject(”Microsoft.XMLHTTP”) sedangkan untuk browser yang lain, xmlHttp di isi fungsi XMLHttpRequest().



var xmlHttp = bikinXmlHttp();

function bikinXmlHttp() {
var xmlHttp;
if (window.ActiveXObject) {
try { //jika IE
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
xmlHttp = false;
}
} else {
try {
xmlHttp = new XMLHttpRequest();
} catch (e) {
xmlHttp = false;
}
}
if (!xmlHttp) {
alert("Gagal dalam membuat xmlHttpRequest Object");
} else {
return xmlHttp;
}
}

Setelah kita definisikan xmlHttp, kita bisa pakai object tersebut didalam fungsi yang lain. Fungsi proses() berisi xmlHttp.readyState, readyState adalah property dari xmlHttp, bisa bernilai 0-4, bernilai 4 berarti koneksi request sukses, yang berarti baris selanjutnya yang akan dieksekusi. Kita akan bahas detail tentang XMLHttpRequest di Bab selanjutnya.
Kemudian pada baris 3, pengambilan nilai dari dokumen dengan id “teksInput” yang tidak lain adalah input teks pada latsatu.html, kita namai nilai dari form itu sebagai variabel “teks”.

Properti onreadystatechange adalah untuk meminta respon server, yang akan di definisikan pada fungsi di bawahnya. Sedangkan setTimeout adalah fungsi javascript untuk mengulang dalam waktu 1 detik jika server sibuk.



function proses() {
if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0) {
teks = encodeURIComponent(document.getElementById("teksInput").value);
xmlHttp.open("GET", "latsatu.php?teks="+teks, true);
xmlHttp.onreadystatechange = responServer;
xmlHttp.send(null);
} else {
setTimeout('proses()',1000); //jika sibuk ulangi dalam 1 detik
}
}

Fungsi respon server di minta oleh fungsi proses(), readyState = 4 jika proses yang dilakukan object telah selesai dan properti status = 200 adalah respon akan mengembalikan nilai OK karena dokumen ditemukan pada waktu request.
responseXML merupakan property untuk mengembalikan respon dalam format XML
documentElement digunakan untuk mengambil root element pada dokumen XML
firstChild.data untuk mengambil nilai pada element pada dokumen XML
pada baris 7 id “hasilProses” pada dokumen HTML akan diberi nilai hasilTeks yang merupakan nilai dari dokumen XML.



function responServer() {
if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
xmlResponse = xmlHttp.responseXML;
xmlDocumentElement = xmlResponse.documentElement;
hasilTeks = xmlDocumentElement.firstChild.data;

document.getElementById("hasilProses").innerHTML = hasilTeks;
setTimeout('proses()',1000);
} else {
alert("Ada problem, method statusText adalah "+xmlHttp.statusText);
}
}
}

Kode di atas hanyalah salah satu contoh sederhana penggunaan konsep ajax, jika anda masih bingung adalah wajar karena penjelasan masing2 ada di bab selanjutnya.

Apakah Ajax itu ? sebelumnya para Web Based Programmer tentu sudah sering mendengar kata-kata tersebut dan sudah menjadi teknologi wajib yang harus digunakan dalam membuat sebuah website moderen dan dinamis.

Mengapa Harus Ajax



Apa perbedaan antara aplikasi website yang menggunakan ajax dan aplikasi website biasa? Jawabannya adalah pada website biasa jika kita mengklik suatu tombol/link tertentu maka browser akan melakukan refresh dimana document HTML akan di baca dari awal dan layar browser akan menjadi blank sesaat karena pada saat itu browser sedang meminta/merequest data dari web server dan hal itulah yang membuat aplikasi website menjadi kurang interaktif dan responsif. Ajax digunakan untuk memecahkan masalah tersebut, Ajax membuat aplikasi website menjadi lebih interaktif dan responsif serta memiliki kecepatan dalam memproses request. Saat ini Ajax sudah menjadi teknologi yang wajib ada bagi website-website moderen (Web 2.0).

Asal Mula Bahasa Pemrograman Ajax

AJAX memiliki kepanjangan Asynchronous Javascript And XML merupakan suatu teknik baru dalam dunia web tapi bukan merupakan bahasa pemrograman yang baru. Sejak telah dikembangkan sekitar 2-3 tahun yang lalu, AJAX mulai dilirik oleh para web desainer dan web programmer. Dengan adanya AJAX, akses data ke server yang dikirim melalui client via web dapat lebih cepat daripada mekanisme biasa. Hal ini dikarenakan AJAX tidak perlu melakukan proses loading page (refresh page) atau pindah ke page yang lain. AJAX dapat diintegrasikan dengan server side programming seperti PHP, ASP, JSP dll. Perhatikan mekanisme proses AJAX menggunakan PHP berikut ini

Gambar  Proses Ajax

Pada mekanisme di atas, proses berawal dari web client. Web client merequest sebuah halaman PHP ke server melalui Javascript. Selanjutnya server akan merespon dan menjalankan script PHP. Script PHP akan menghasilkan respon dalam bentuk XML dan data XML tersebut akan dikirim kembali ke web client untuk diolah oleh Javascript. Hasil olahan javascript tersebut akhirnya akan ditampilkan di web client sebagai output tanpa harus merefresh halaman web. Bandingkan dengan mekanisme biasa dalam menjalankan PHP seperti yang ditunjukkan pada gambar berikut

Gambar  Proses Biasa

Pada mekanisme biasa, respon yang dihasilkan oleh server berupa HTML yang mengakibatkan halaman web akan merefresh tampilan. Dilihat dari sisi efisiensi, hal ini tentu kurang sekali.
Sedangkan kekurangan AJAX dibandingkan mekanisme biasa adalah memiliki tingkat kesukaran pemrograman yang lebih tinggi, karena programmer harus menguasai 4 hal yaitu HTML-(XHTML), Javascript, XML dan juga server side programming seperti PHP dan lain sebagainya.

Aplikasi Website dengan Ajax


Pada aplikasi Javascript konvensional jika kita menginginkan data dari server kita menggunakan Form dan memanggilnya dengan method GET atau POST. Sehingga pengunjung perlu mengklik tombol dan kemudian halaman akan kerefresh untuk menampilkan hasil dari request tersebut.

Nah, kalau dengan Ajax, Javascript berkomunikasi langsung keserver dengan sebuah fungsi yang disebut XMLHttpRequest. dengan XMLHttpRequest suatu halaman web dapat direquest dari server dan diterima hasilnya tanpa perlu terjadi refresh pada halaman web tersebut. XMLHttpRequest telah disupport oleh IE 5 keatas, Safari 1.2 keatas, Mozilla Firefox keatas dan Opera 8 keatas. Ajax merupakan penggabungan teknologi-teknologi Javascript, HTML/XHTML, XML, CSS dan Server Side Client. Jadi jika anda belum menguasai salah satu dari teknologi tersebut disarankan untuk anda mempelajari dahulu sebelum melanjutkan pemahaman tentang AJAX.

Contoh aplikasi Ajax

Pada artikel ini saya akan coba memberikan contoh ajax yang paling sederhana karena aplikasi-aplikasi website yang besar dimulai dari sesuatau yang sederhana. Untuk memulainnya silahkan anda buat sebuah File HTML dan tuliskan kode dibawah ini lalu simpan dengan nama index.html





Contoh AJAX title><br /><script language = "javascript"><br />function GetXmlHttpObject()<br />{<br />var xmlHttp=null;<br />try<br />{<br />//Untuk Browser Firefox, Opera 8.0+, Safari<br />xmlHttp=new XMLHttpRequest();<br />}<br />catch (e)<br />{<br /><br />//Untuk Browser Internet Explorer<br />try<br />{<br />xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");<br />}<br />catch (e)<br />{<br />xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");<br />}<br />}<br />return xmlHttp;<br />}<br /><br />function getpages(url,centercol) {<br /> xmlHttp=GetXmlHttpObject();<br /> if (xmlHttp) {<br /> var obj = document.getElementById(centercol);<br /> xmlHttp.open("GET", url);<br /> xmlHttp.onreadystatechange = function() {<br /> if (xmlHttp.readyState == 1) {<br /> obj.innerHTML = '<img alt="\" src="\" alt="\" />';<br /> }<br /> if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {<br /> obj.innerHTML = xmlHttp.responseText;<br /> }<br /> }<br /> xmlHttp.send(null);<br /> }<br /> }<br /></script><br /><br /><br /></head><br /><body><br /><br /><h1>Request File Dari HTML </h1><br /><form><br /><input type="button" value="Request File " onclick="getpages ('request.html','centercol')"><br /></form><br /><div id="centercol"><br /> File request.html akan ditampilkan disini<br /></div><br /><br /></body><br /></html><br /><br /><br /></code></pre><br />Sekarang buat file HTML dengan nama request.html yang disimpan dengan folder yang sama dengan File diatas kemudian isilah dengan text berikut ini:<br /><br /><pre><code><br />Text ini ditampilkan dengan metode proses request <strong>Ajax</strong></code></pre><br /><strong> Berikut saya terangkan secara mendetail</strong><br /><br />Awalnya kita perlu membuat object <strong> XMLHttpRequest</strong>, objek ini wajib ada dalam website yang menggunakan Ajax. Untuk memanggilnya kita perlu menggunakan fungsi berikut ini: <pre><code><br />function GetXmlHttpObject()<br />{<br />var xmlHttp=null;<br />try<br />{<br />//Untuk Browser Firefox, Opera 8.0+, Safari<br />xmlHttp=new XMLHttpRequest();<br />}<br />catch (e)<br />{<br />//Untuk Browser Internet Explorer<br />try<br /> {<br /> xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");<br /> }<br />catch (e)<br /> {<br /> xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");<br /> }<br />}<br />return xmlHttp;<br />}</code></pre><br />Pertama-tama kita set xmlHttp=null tidak aktif, kemudian baru kita aktifkan lagi dengan membuat objek yang baru <pre><code>xmlHttp =<br />new XMLHttpRequest(); Khusus untuk Internet Explorer, karena menggunakan ActiveX<br />untuk membuat XMLHttpRequest kita harus membuat kode </code><pre><code>xmlHttp = new ActiveXObject("Microsoft.XMLHttp");<br /><br /><br /><br />Setelah kita membuat objek XMLHttpRequest sekarang kita membuat fungsi untuk mengambil file dan menampilkannya. Disini kita membuat fungsi</code><pre><code> function getpages<br /><br />(url,centercol), yang didalamnya terdapat </code><pre><code>xmlHttp.open<br /><br />("GET", url); yang berarti kita mengambil url dengan method get. dengan menggunakan method get maka kita harus mengirimkan sesuatu keserver, tapi karena<br /><br />kita tidak mengirim apa-apa maka kita kirimkan saja nilai kosong dengan kode:<br /><br /></code><pre><code>xmlHttp.send(null);<br /><br /></code><pre><code>xmlHttp.onreadystatechange = function() merupakan sebuah fungsi<br /><br />dimana nanti kita akan memperoleh status dari request file yang telah kita lakukan.<br /><br />xmlHttp.readyState memiliki 4 status yaitu:<br /></code><ul><br /> <li>0 Request kita belum dibuat</li><br /> <li>1 Request kita sedang dalam proses (biasanya kita menggunakan gambar loading dengan ini)</li><br /> <li>2 Request kita sudah dikirim tapi hasil belum diterima</li><br /> <li>3 Request kita sedang diproses dikomputer klien</li><br /> <li>4 Request sudah sukses dikirim dan kita sudah sukses menerimanya</li><br /></ul><br />xmlHttp.status merupakan status http. Jika<br /><br /> statusnya 200 berarti file html nya ada dan siap ditampilkan. Sehingga kita perlu mengecek<br /><br /> kedua status tersebut dengan kode<pre><code>if (xmlHttp.readyState == 4 && xmlHttp.status == 200)</code></pre><br />Jika kedua statusnya oke, maka kita perlu menampilkannya dengan perintah <pre><code>obj.innerHTML = xmlHttp.responseText</code></pre> Dimana ini berarti kita menampilkannya di obj, sementara variabel obj telah kita isi dengan centercol, ini kode ketika kita mengisi obj dengan centercol,<br /><pre><code>var obj = document.getElementById(centercol).</code></pre><br /><br /><br /><br /><br />Terakhir Kita memanggil fungsi <pre><code>getpages</code> pada tombol serta mengirim url yang akan ditampilkan. Inilah kode yang digunakan untuk memanggil fungsi getpages:<br /><br /> <pre><code><input type="button" value="Tampilkan Request" onclick="getpages('request.html' ,'centercol')"><br /><br /></code></pre></pre></pre></pre></pre></pre></pre></pre><p>Istilah AJAX digunakan pada website yang berinteraksi dengan server melalui javascript secara asinkron (background), sehingga pengguna tidak perlu untuk meload keseluruhan halaman. Hal ini menyebabkan pengiritan waktu dan bandwidth, juga menghasilkan website yang makin interaktif. Seperti kebanyakan artikel pada umumnya, website yang dijadikan contoh AJAX sejati adalah GMail. Bagi yang pernah menggunakan GMail, tentu merasakan kehandalan interface webmailnya dengan AJAX.</p> <p>Untuk mengaplikasikan AJAX (Asyncronous Javascript And XML) dalam website, yang dibutuhkan adalah browser dengan kemampuan Javascript, dan komponen XMLHTTP bagi pengguna IE, dan XMLHttpRequest untuk Firefox dan browser lainnya. Syarat-syarat tersebut hampir pasti sudah terpenuhi, mengingat pengguna internet kita banyak yang menggunakan IE dan Firefox :)</p> <p>Sebenarnya tidak ada hal baru dalam AJAX, karena yang digunakan adalah teknologi javascript, yang notabene sudah lama digunakan. Karena itu, bagi yang sudah terbiasa dengan javascript, akan mudah sekali mempelajari AJAX.</p> <p>Pembahasan ini tidak menekankan pada salah satu teknologi (Javascript, AJAX, HTML, PHP), tapi keseluruhan dari hal tersebut. Hal ini karena penggunaan AJAX tidak hanya pada sisi klien (browser), tapi juga melibatkan respon dari server.</p> <p>Sebagai acuan, berikut ini adalah salah satu kerangka dasar AJAX, yang katanya bikinan Mr Rasmus Redlorf, the creator of PHP.<br />Simpan dengan namafile: ajaxify.js</p> <p><textarea rows="29" name="S1" cols="52" readonly="readonly" style="word-wrap: break-word;">function createRequestObject() { var ro; var browser = navigator.appName; if(browser == "Microsoft Internet Explorer"){ ro = new ActiveXObject("Microsoft.XMLHTTP"); }else{ ro = new XMLHttpRequest(); } return ro; } var http = createRequestObject(); function sndReq(action) { http.open('get', 'rpc.php?action='+action); http.onreadystatechange = handleResponse; http.send(null); } function handleResponse() { if(http.readyState == 4){ var response = http.responseText; var update = new Array(); update = response.split('|'); if((response.indexOf('|' != -1)) && (update[0] == "OK")) { document.getElementById("hasil").style['color'] = '#00f'; document.getElementById("hasil").innerHTML = update[1]; } else { document.getElementById("hasil").style['color'] = '#f00'; document.getElementById("hasil").innerHTML = "Respond dari server tidak sesuai"; } } }</textarea></p> <p>Kode di atas adalah AJAX yang sangat dasar, yang jika ingin dikembangkan, masih butuh untuk dimodifikasi lagi.</p> <p>Untuk melaksanakan proses request, dibutuhkan obyek XMLHttpRequest. Pada kode di atas, hal tersebut dilakukan pada fungsi createRequestObject(), yang hasilnya disimpan dalam obyek http.<br />Dalam fungsi tersebut, jika browser yang digunakan adalah IE, maka yang diciptakan adalah obyek Microsoft.XMLHTTP, dan XMLHttpRequest untuk browser lainnya.</p> <p>Fungsi berikutnya, yaitu sndReq(), berfungsi sebagai pengirim request kepada server. Pada contoh di atas, request yang dilakukan adalah dengan method 'get', dan action/datanya diletakkan pada URL-nya.<br />Pada kasus sebenarnya, mungkin saja suatu saat nanti dibutuhkan pengiriman data melalui method 'post'. Untuk hal seperti ini, dibutuhkan teknik yang lebih jauh. Kali ini kita gunakan method 'get' dulu.</p> <p>Pada fungsi sndReq() ditentukan bahwa yang akan menangani hasil request adalah fungsi handleResponse(), dan setelah melakukan pengiriman (send), tugas dari fungsi sndReq() telah berakhir.</p> <p>Fungsi yang akan sangat sibuk dalam AJAX adalah fungsi handleRequest(), karena di sinilah segala respon dari server ditangani.</p> <p>Dalam contoh ini, yang ditangani adalah ketika request telah komplit diterima (readyState == 4). Data yang diambil adalah responseText, yaitu seluruh teks hasil kembalian dari server. Jika ingin menangani kembalian data yang berupa XML, maka data yang diambil adalah responseXML.</p> <p>Untuk kasus di atas, diharapkan response dari server berupa:</p> <p>"status|Pesan"</p> <p>Sehingga script akan langsung mengetahui status request, dan merubah isi div yang telah disediakan dengan teks respon dari server.</p> <p>Pemanfaatan kode di atas, mengharuskan kita menyediakan script dengan nama rpc.php, dan halaman HTML dengan suatu div untuk menampilkan hasil respon.</p> <p>Berikut ini contoh file rpc.php:</p> <p> <textarea rows="26" name="S2" cols="52" readonly="readonly" style="word-wrap: break-word;"><?php $action = $_GET['action']; switch($action) { case "hariini" : echo "OK|".date("j F Y H:i:s"); break; case "namaserver" : echo "OK|".$_SERVER['SERVER_NAME']; break; case "ipuser" : echo "OK|".$_SERVER['REMOTE_ADDR']; break; case "versiphp" : echo "OK|".phpversion(); break; default : echo "ERROR|Perintah tidak diketahui ($action)"; break; } ?></textarea> </p> <p>Ini adalah contoh halaman HTML yang memanfaatkan AJAX:</p> <p> <textarea rows="29" name="S3" cols="52" readonly="readonly" style="word-wrap: break-word;"><html> <head> <title>AJAX Test

AJAX Test


Silakan klik link ini:

Hari Ini
Nama server
Alamat IP
Versi PHP
Tidak diketahui

Untuk mengaplikasikan AJAX dalam situs anda, banyak hal yang harus dipikirkan, diantaranya adalah:

  • Kelebihan dan kekurangan yang didapatkan oleh pengguna anda
    Jangan sampe user anda kesulitan berhadapan dengan interface baru, meski secara teori, interface AJAX justru mempermudah.
  • Keterbatasan user
    Browser yang support AJAX memang sudah banyak, tapi bagaimana dengan user yang benar-benar tidak dapat menjalankan AJAX?
  • Handling yang banyak
    Ini adalah beban buat programmer, bagaimana menangani berbagai kemungkinan. Misalnya jika transfer tidak sukses, jika user membatalkan proses, jika browser tidak diaktifkan javascriptnya, dan lain sebagainya.
Demikian tutorial singkat ini. Memang masih belum lengkap, karena kita masih belum memanfaatkan teknologi XML, sebagaimana kepanjangan AJAX :)


0 Response to "Pengembangan Teknologi 11"

Poskan Komentar