DEV Community

Hadi Hidayat Hammurabi
Hadi Hidayat Hammurabi

Posted on

Apa itu REST API?

Istilah REST API sedang populer, naik daun, dan memang sering diterapkan oleh berbagai tim programmer. Kalau temen-temen belum tau ini apa, tenang, ada banyak orang di seluruh dunia juga sedang mempelajarinya. Informasi bagus agar temen-temen gak merasa sendirian ahahaha...

Oke, masuk ke materi.

Pengertian

REST API ini tu arsitektur dalam pengembangan aplikasi yang memisahkan bagian tampilan (frontend) dengan alur bisnis (backend) dan pengiriman datanya melalui jalur HTTP.

Keuntungan

Nahhh... Ini beberapa keuntungan kalau kita menerapkan REST API nih.

  1. Kode lebih mudah dikelola karena frontend dan backend dibuat terpisah.
  2. Lebih mudah mencari akar masalah saat terjadi error. Kalau error di frontend ya cari aja di situ, begitu juga dengan backend, jangan cari yang bukan tempatnya ya ahahaha...
  3. Kalau kita ber-tim, pembagian tugas jadi lebih mudah.
  4. Karena menggunakan protokol HTTP, REST API jadi lebih familiar bagi kebanyakan orang. Kan banyak orang udah pada tau cara pakai si HTTP ini. Minimal, saat mengunjungi website.

Kekurangan

Kalau sudah tau untungnya apa, sekarang kita perlu tau kekurangannya ni, supaya kita bisa antisipasi hal-hal yang tak diinginkan. Jadi ini nih kekurangannya.

  1. Kode yang dikelola jadi lebih banyak. Kalau biasanya cuma 1 projek aja, sekarang jadi 2 projek (frontend dan backend).
  2. Tidak disarankan untuk solo player (sendirian). Semakin banyak yang dikelola, semakin banyak yang diatur, dan semakin banyak pula yang harus dilakukan. Kasian kamu kalau sendirian ๐Ÿ˜Š

Saya sejauh ini menerapkan REST API dengan hati riang-gembira.
- @hadihammurabi

Komunikasi Data pada REST API

Nahhh... Kalau temen-temen tertarik untuk menerapkan REST API, berarti harus ngerti ni gimana caranya berkirim data antara frontend dengan backend. Kita lanjuuuttt yaaa...

|-------------|                 |-------------|
|  Frontend   |  <-- HTTP -->   |   Backend   |
|-------------|                 |-------------|
Enter fullscreen mode Exit fullscreen mode

Jadi untuk proses pengambilan data, frontend mengakses sebuah URL yang ada di backend, kemudian backend akan mengirimkan datanya sebagai respon. Pada dasarnya, sama seperti kita mengunjungi halaman web, kita lakukan request, kemudian webnya tampil.

Terus, kalau frontend mau kirim data, juga sama-sama mengakses URL yang ada di backend. Hanya saja kali ini dengan menyertakan data yang dikirim. Misal di frontend, usernya mau login, terus frontend kirim data ini ke backend.

Sebetulnya, cara kerjanya sesimpel ini.

Penutup

Karena baru pengenalan, jadi segini dulu ya pembahasan tentang REST API. Di artikel-artikel selanjutnya, kita bahas lagi lebih detail. Bahkan sampai koding kalau bisa.

Kalau mau diskusi, komen aja. Kalau mau berteman, bilang aja ๐Ÿ˜Ž

Top comments (4)

Collapse
 
diosamuel profile image
diosamuel • Edited

Mantap pakk๐Ÿ‘, ijin bertanya out topic boleh ya pak๐Ÿ˜‚, kalau sama webhook bedanya apa ya pak๐Ÿค”

Collapse
 
hadihammurabi profile image
Hadi Hidayat Hammurabi

Webhook itu salah satu implementasi dari REST API. Biasanya, diakses secara otomatis saat aksi tertentu. Misal webhook di gitlab, saat ada aksi push, webhook ini akan diakses. Bentuknya yaaa, REST API juga sebenernya ahahaha...

Collapse
 
diosamuel profile image
diosamuel

Owalahh๐Ÿ˜‚, apa ada ciri khusus webhook pak? Trus untuk akses webhook apa sama dengan akses rest api pada umumnya?

Thread Thread
 
hadihammurabi profile image
Hadi Hidayat Hammurabi • Edited

Ciri khususnya adalah dia nempel sama aksi tertentu, semacam ada trigger gitu. Aksesnya sama aja kayak REST API biasa. Gampang lah ahahahaha...