Kamis, 31 Januari 2013

REST API


A..Pengertian dan Prinsip kerja
         REST adalah salah satu jenis web service yang menerapkan konsep perpindahan antar state. State disini dapat digambarkan seperti jika browser meminta suatu halaman web, maka serverakan mengirimkan state halaman web yang sekarang ke browser. Bernavigasi melalui link-link yang disediakan sama halnya dengan mengganti state dari halaman web. Begitu pula REST bekerja, dengan bernavigasi melalui link-link HTTP untuk melakukan aktivitas tertentu, seakan-akan terjadi perpindahan state satu sama lain. Perintah HTTP yang bisa digunakan adalah fungsi GET, POST, PUT atau DELETE. Balasan yang dikirimkan adalah dalam bentuk XML sederhana tanpa ada protokol pemaketan data, sehingga informasi yang diterima lebih mudah dibaca dan diparsing disisi client.
         Dalam pengaplikasiannya, REST lebih banyak digunakan untuk web serviceyang berorientasi pada resource. Maksud orientasi pada resource adalah orientasi yang menyediakan resource-resource sebagai layanannya dan bukan kumpulan-kumpulan dari aktifitas yang mengolah resource itu.Alasan mengapa REST tidak digunakan dalam skripsi ini karena orientasi pada resourcenya itu,sedangkan aplikasi event calendar membutuhkan pemanggilan metode yang bisa dikerjakan terhadap kumpulan resource event. Selain itu, karena standarnya yang kurang sehingga tidak begitu cocok diterapkan dalam aplikasi yang membutuhkan kerjasama antar aplikasi lain, dimana standar yang baik akan sangat berguna karena berbicara dalam satu bahasa yang sama. Beberapa contoh web service yang menggunakan REST adalah: Flickr API(Application ProgramInterface), YouTube API, Amazon API.
 Prinsip Kerja:
1. Download plugin JSON API dari http://wordpress.org/extend/plugins/json-api/ atau dari plugin menu dashboard anda, setelah itu aktifkan plugin tersebut.
Masuk ke menu Settings lalu klik JSON API, makan anda akan masuk ke halaman konfigurasinya.

Di sana Anda akan melihat controller dan penjelasannya, intinya adalah:
  • Posts controller, jika diaktifkan maka anda mengijinkan aplikasi client yang anda buat melakukan posting content ke blog wordpress Anda.
  • Core controller, ini adalah metode-metode yang pasti dipakai oleh aplikasi client (seperti menarik data post, page, dan category).
  • Respond controller, jika diaktifkan maka anda mengijinkan aplikasi client yang anda buat melakukan post comment ke blog wordpress Anda
  • API base, adalah halaman yang diakses ketika requesting data dari controller-controller di atas.
3. Setelah diaktifkan sekarang saatnya kita coba, coba anda akses URL ini di browser anda http://dev.magikube.com/experiment/api/get_post/?post_id=6 (ini adalah url experiment server saya :) ). Anda akan mendapatkan hasil seperti ini.

Gambar di atas adalah hasil data yang sama jika anda membuat “the loops” pada template, hanya saja dalam format JSON. Untuk membandingkannya silahkan anda ketik <?php while(have_posts()): the_posts(); print_r($post); endwhile; ?> pada salah satu file template wordpress anda, maka anda akan mendapat hasil data yang sama.

B.Perkembangan

Meskipun beberapa tahun ini kita melihat perkembangan teknologi web service, tetapi popularitas SOAP tetap tidak berkurang. Arsitektur internet  datag dengan argumen yang bagus untuk  menekan soap di sisi yang lain: ada metode yang lebih baik untuk membangun web service dalam bentuk Representational State Transfer (REST).
REST lebih kepada filosofi lama, ketimbang sebuah teknologi yang baru. Tetapi dalam kenyataannya datang kemudian dalam teknologi. Sedangkan SOAP nampak seperti lompatan baru ke fase selanjutnya dalam pengembangan internet dengan sekumpulan spesifikasi baru, filosofi REST mendukung bahwa prinsip dan protokol yang sudah ada di Web cukup untuk membuat web servide yang kuat (robust). Hal ini berarti bahwa developer yang mengerti HTTP dan XML dapat mulai membangun web service tanpa membutuhkan toolkit di belakang apa yang biasanya digunakan dalam pengembangan aplikasi internet..Contoh
Dalam REST API terdapat 4 method, yaitu POST, GET, PUT, DELETE. Ini tentu sudah merupakan pencerahan bagi para pembaca sekalian, karena REST menggunakan kata kerja. Pendekatan yang lebih mudah untuk dimengeri adalah dengan melihat contoh berikut :



URL : http://contoh.com/api/user/17



Anggaplah itu adalah URL untuk penggunakan REST API. Pada contoh diatas kita sudah bisa melihat ada user dan id-nya. Mari kita lihat perbedaan untuk 4 method yang sudah dijelaskan sebelumnya, POST, GET, PUT, DELETE.



POST : Untuk Menaruh User baru dengan ID 17

GET : Untuk mengambil data/informasi User dengan ID 17

PUT : Digunakan untuk melakukan update/merubah data User dengan ID 17

DELETE : Untuk menghapus User dengan ID 17




4 komentar: