Cross domain AJAX, pendekatan lain
// August 29th, 2009 // 1 Comment // Programming
Beberapa hari yang lalu aku dapat kerjaan yang mengharuskan melakukan cross domain AJAX (ga harus-harus banget sih).
Apa itu cross domain AJAX
Nah, mungkin ada yang ga ngerti maksud cross domain AJAX itu. Cross domain AJAX adalah panggilan AJAX untuk sebuah halaman web, dimana alamat yang dipanggil berbeda dengan alamat yang memanggil. AJAX umumnya hanya memanggil halaman dari domain yang sama aja.
Tapi, udah jadi rahasia umum kalo cross domain AJAX itu dilarang demi keamanan.
Cross domain request menggunakan JSON
Ada beberapa cara udah ada yang buat, ada yang pake JSON, Flash dll. Yang paling banyak dua itu. Untuk JSON, site yang dipanggil harus bisa handle panggilan ini, jadi return value nya terbatas, hanya berupa variabel-variabel. Ga bisa full site gitu.
Cross domain request dengan Flash
Sama seperti AJAX, pada dasarnya Flash ga bisa request ke domain lain. Tapi, bisa diakali dengan menempatkan XML di domain yang dituju, sebagai penerima request dari domain lain. Jadi Flash digunakan sebagai jembatan untuk mengirimkan cross doamain request. Tapi keterbatasannya sama dengan JSON, remote domain harus bisa handle request. Tidak bisa halaman sembarang.
Terakhir, cross domain request dengan Iframe
Yang terakhir ini kayaknya masih grey area. Kayaknya sih bukan AJAX, tapi bisa digunakan untuk request suatu halaman beda domain. Kekurangannya adalah, kurang AJAX kali ya..
Flownya…
Intinya adalah, kita akan membutuhkan bantuan sebuah form dan iframe yang bisa digenerate oleh javascript. Iframe diset hidden menggunakan CSS dan attribute.
URL atau domain yang dituju, diinject ke form action yang digenerate tadi, perlu diingat, untuk URL yang memiliki HTTP GET value, harus dipecah menjadi beberapa form input, input ini juga harus digenerate sesuai banyaknya HTTP GET.
Contoh:
Jika url adalah http://example.com?a=1 maka kita harus membuat form input hidden dengan name=a dan value=1, dan seterusnya untuk HTTP GET selanjutnya.
Form method form tersebut harus dibuat method=GET dengan target=iframe_name yang digenerate tadi. Jadi hasil form action tadi akan di-load ke iframe yang tersembunyi tadi. Neat..
Selanjutnya pada saat iframe ready state, atau halaman yang di-load di iframe tadi ter-load, kita bisa ambil value iframe tadi untuk sesuatu nantinya. Sesuai kebutuhan kamu untuk request ini.
Script nya..
Berhubung bisa dipake buat yang enggak-enggak.
Jadi ga usah dishare dulu deh.
Bisa buat sendiri kan? coba pake framework javascript kayak jQuery atau Mootools gitu.
Related Posts







bisa klik iklan sendiri?
dijual aja tuh script,
email aku ya..