Mengenal RESTful Webservice

Posted by Admin on 26 April 2018, 20:35 restfull, web service

REST (REpresentational State Transfer) merupakan standar arsitektur komunikasi berbasis web yang sering diterapkan dalam pengembangan layanan berbasis web. Umumnya menggunakan HTTP (Hypertext Transfer Protocol) sebagai protocol untuk komunikasi data. REST pertama kali diperkenalkan oleh Roy Fielding pada tahun 2000.

Pada arsitektur REST, REST server menyediakan resources (sumber daya/data) dan REST client mengakses dan menampilkan resource tersebut untuk penggunaan selanjutnya. Setiap resource diidentifikasi oleh URIs (Universal Resource Identifiers) atau global ID. Resource tersebut direpresentasikan dalam bentuk format teks, JSON atau XML. Pada umumnya formatnya menggunakan JSON dan XML.

Berikut metode HTTP yang umum digunakan dalam arsitektur berbasis REST.

  1. GET, menyediakan hanya akses baca pada resource
  2. PUT, digunakan untuk menciptakan resource baru
  3. DELETE, digunakan untuk menghapus resource
  4. POST, digunakan untuk memperbarui resource yang ada atau membuat resource baru
  5. OPTIONS, digunakan untuk mendapatkan operasi yang disupport pada resource

REST adalah salah satu implementasi dari web service yaitu sebuah standar yang digunakan untuk pertukaran data antar aplikasi atau sistem. Biasanya aplikasi atau sistem ini menggunakan bahasa pemrogramman yang berbeda sehingga untuk bisa berkomunikasi satu sama lainnya bisa menggunakan web service ini.

Web service yang berbasis arsitektur REST kemudian dikenal sebagai RESTful web services. Layanan web ini menggunakan metode HTTP untuk menerapkan konsep arsitektur REST.

Cara Kerja RESTful web services

Sebuah client mengirimkan sebuah data atau request melalui HTTP Request dan kemudian server merespon melalui HTTP Response. Komponen dari http request :

  1. Verb, HTTP method yang digunakan misalnya GET, POST, DELETE, PUT dll.
  2. Uniform Resource Identifier (URI) untuk mengidentifikasikan lokasi resource pada server.
  3. HTTP Version, menunjukkan versi dari HTTP yang digunakan, contoh HTTP v1.1.
  4. Request Header, berisi metadata untuk HTTP Request. Contoh, type client/browser, format yang didukung oleh client, format dari body pesan, seting cache dll.
  5. Request Body, konten dari data.

Sedangkan komponen dari http response :

  1. Status/Response Code, mengindikasikan status server terhadap resource yang direquest. misal : 404, artinya resource tidak ditemukan dan 200 response OK.
  2. HTTP Version, menunjukkan versi dari HTTP yang digunakan, contoh HTTP v1.1.
  3. Response Header, berisi metadata untuk HTTP Response. Contoh, type server, panjang content, tipe content, waktu response, dll
  4. Response Body, konten dari data yang diberikan.

Referensi

http://www.tutorialspoint.com/restful

https://ngide.net/posts/2017/07/25/apa-itu-rest-api

https://www.codepolitan.com/mengenal-restful-web-services