REST WEB SERVICE

REST Web Service


    Untuk membangun web service, kita harus menetapkan arsitektur yang hendak diadaptasi. Menetapkan arsitektur membuat komunikasi antara client dan server lebih mudah karena memiliki pola atau gaya yang konsisten. REST adalah arsitektur web service yang paling populer saat ini. 

    REST atau REpresentational State Transfer adalah salah satu gaya arsitektur yang dapat diubah saat membangun web service. Karena kemudahan pengembangannya, arsitektur ini sangat disukai. REST menggunakan pola request-response untuk berkomunikasi, menggunakan protokol HTTP, seperti yang telah kita bahas sebelumnya. 

Arsitektur REST membuat peran client dan server terpisah, bahkan tanpa saling mengetahui. Ini berarti bahwa perubahan di sisi client tidak akan berdampak pada server, begitu juga sebaliknya.

source image: https://www.dignitas.id/

REST API

    Mungkin beberapa dari Anda sudah mengenal REST dengan nama RESTful API. Itu benar! RESTful adalah sebutan untuk web services yang menggunakan arsitektur REST. Selain itu, karena digunakan untuk menghubungkan antara klien dan server dalam sistem, REST juga merupakan API (application program interface).

"API atau Application Program Interface merupakan antarmuka yang menjadi perantara antara sistem aplikasi yang berbeda. API tak hanya dalam bentuk Web Service, bisa saja berupa SDK (Software Development Kit) ataupun lainnya."


Berikut beberapa sifat yang menjadi kunci pada REST API.

    1. Client-Server : Ini merupakan hal yang paling mendasar dalam membangun REST API. Server
        harus bisa merespons permintaan yang dilakukan client, baik itu respons berhasil ataupun gagal.
        Komunikasi client dan server dilakukan melalui protokol HTTP.

    2. Stateless : REST API tidak boleh menyimpan keadaan (state) apa pun terkait client. Seluruh state
        harus tetap disimpan di client. Artinya, tidak ada session di REST API. Permintaan yang dilakukan
        client harus mengandung informasi yang jelas. Jangan berharap RESTful API akan menyimpan
        informasi dari permintaan sebelumnya untuk digunakan di permintaan selanjutnya.

    3. Cacheable : Agar dapat merespons permintaan dengan cepat, sebaiknya REST API menerapkan
        prinsip cache. Sehingga setiap permintaan tidak melulu mengambil dari database.

    4. Layered : Ketika REST API server memiliki arsitektur yang kompleks, client seharusnya tidak
        perlu tahu bagaimana server melayaninya.


Selain itu, kita harus memahami konsep penting yang akan digunakan dalam arsitektur ini sebelum membangun REST API. Apa saja?

Singkatnya, ketika membangun REST API kita harus memperhatikan empat poin berikut:
    1. Format request dan response.
    2. HTTP Verbs/Methods.
    3. HTTP Response code.
    4. URL Design.

Posting Komentar

0 Komentar