Mengenal REST API dari NOL

Firmansyah Yanuar
3 min readOct 26, 2020

REST API banyak sekali digunakan di teknologi yang sering digunakan di zaman sekarang. Baik frontend atau backend, wajib sekali untuk memahami teknologi ini. Lho kenapa bukannya urusan backend aja? Iya tapi penting untuk posisi frontend paham akan konsep REST API ini dan bisa mengonsumsi data dari REST API.

Jadi apa itu REST API?

REST (Representational State Transfer) hanyalah sebuah style arsitektur untuk membuat web services. Sedangkan API (Application Programming Interface) adalah ‘jembatan’ yang memungkinkan sebuah aplikasi bisa digunakan oleh aplikasi lain. Jika dipadukan REST API adalah ‘jembatan’ yang dibuat dengan style arsitektur REST.

Kenapa kita perlu REST API?

Arsitektur website secara umum (monolith)

Arsitektur website pada umumnya bisa digambarkan sebagai berikut. Arsitektur tersebut biasa disebut arsitektur monolith. Sebuah tampilan pada website akan langsung berinteraksi dengan database dan kedua komponen tersebut terisolasi, artinya tidak bisa dipisahkan.

Pertanyaannya, jika kita ingin membuat sebuah aplikasi mobile dan menggunakan database yang sama. Bagaimana merealisasikan hal tersebut? Jawabannya tidak bisa, karena database hanya bisa diakses oleh website. Maka solusi dari permasalahan tersebut salah satunya membuat suatu server REST API untuk menjembatani database dengan website dan aplikasi mobile. Desain arsitektur tersebut sebagai berikut:

Arsitektur website & mobile apps dengan REST API

Bagaimana REST API Berkomunikasi

REST API menggunakan komunikasi HTTP yang artinya akan ada request dan response. Request adalah sebuah permintaan dari client menuju server. Response adalah sebuah balasan dari request yang diminta. Tidak akan ada sebuah response jika kita tidak mengirimkan sebuah request, yang artinya sebuah server tidak bisa mengirimkan suatu data dengan tiba-tiba.

Untuk mengirimkan suatu request kita perlu sebuah URL, METHOD, dan DATA.

1. URL adalah sebuah alamat yang kita akan kirimkan sebuah request, satu alamat bisa menghandle lebih dari satu METHOD.

2. METHOD adalah suatu penunjuk tindakan apa yang kita lakukan. Method sebetulnya ada banyak, namun 4 method yang sering dipakai sebagai berikut:

  • GET, untuk mengambil sebuah data
  • POST, untuk mengirimkan sebuah data, biasanya diikuti sebuah perubahan data di server.
  • PUT, untuk mengubah sebuah data di server
  • DELETE, untuk menghapus sebuah data di server

3. DATA adalah merupakan suatu informasi yang bisa kita kirimkan. Data terdiri dari head & body

  • Head merupakan sebuah konfigurasi dari request yang kita kirimkan
  • Body adalah isi data yang ingin kita kirimkan.

Setelah request dikirimkan, server akan membalas dengan sebuah response. Response akan berisikan status code dan data balasan. Status code digunakan sebagai penanda apa yang terjadi pada server. Berikut rangkuman status code yang ada:

HTTP Status Code. From : https://www.restapitutorial.com/httpstatuscodes.html

Sekian tulisan saya mengenai REST API. Selanjutnya saya akan menulis membuat REST API dari NOL dengan NodeJS. Jika ingin diskusi/koreksi boleh melalui kolom komentar atau message di LinkedIn saya. Terimakasih telah membaca.

--

--

Firmansyah Yanuar

katanya sih developer, tapi suka greget sama desain dan pengen jualan...