Memahami REST API dan HTTP lewat Contoh Sederhana

Backend·2 mnt baca
Sampul artikel dasar REST API dan HTTP
Daftar Isi
  1. Request punya tujuan
  2. Kenali status code dasar
  3. Panggil API dari JavaScript
  4. REST itu pola desain

Ketika aplikasi web menampilkan daftar tugas, data itu sering datang dari server. Browser mengirim request, server memprosesnya, lalu mengirim response. HTTP adalah aturan dasar pertukaran pesan tersebut.

Request punya tujuan

Sebuah request biasanya berisi method, URL, header, dan kadang body. Untuk membaca daftar tugas, klien dapat meminta:

GET /api/tasks HTTP/1.1
Accept: application/json

Server dapat membalas dengan status dan JSON:

HTTP/1.1 200 OK
Content-Type: application/json

[{"id":1,"title":"Belajar HTTP","done":false}]

GET dipakai untuk mengambil representasi data. Untuk membuat tugas baru, gunakan POST dengan body:

POST /api/tasks HTTP/1.1
Content-Type: application/json

{"title":"Belajar API"}

Jika berhasil membuat sumber baru, server dapat mengembalikan status 201 Created beserta data atau lokasi sumber tersebut.

Kenali status code dasar

Kode Arti praktis
200 Request berhasil dan ada response.
201 Sumber baru berhasil dibuat.
400 Input request tidak sesuai aturan API.
401 Autentikasi diperlukan atau tidak valid.
404 Sumber yang diminta tidak ditemukan.
500 Server gagal memproses request.

Jangan hanya memeriksa apakah koneksi berhasil. Status 404 dan 500 tetap merupakan response HTTP, tetapi menandakan hasil yang perlu ditangani.

Panggil API dari JavaScript

async function muatTugas() {
  const response = await fetch("/api/tasks");
  if (!response.ok) {
    throw new Error(`Gagal mengambil tugas: ${response.status}`);
  }
  return response.json();
}

fetch tidak otomatis melempar error untuk status HTTP 4xx atau 5xx. Itulah sebabnya response.ok perlu diperiksa. Tambahkan penanganan error di UI agar pengguna tahu ketika data gagal dimuat.

REST itu pola desain

Dalam API bergaya REST, URL mewakili sumber seperti /api/tasks atau /api/tasks/1, sedangkan method menjelaskan tindakan terhadap sumber itu. Ini membantu API tetap mudah ditebak. Tetap dokumentasikan bentuk JSON, aturan validasi, dan kemungkinan error; nama endpoint saja tidak cukup.

Sebagai latihan, rancang endpoint untuk daftar catatan: URL apa yang dipakai untuk membaca semua catatan, membuat catatan, dan membaca satu catatan? Setelah itu, coba implementasikan dengan bahasa backend yang kamu pelajari.

Ditulis olehZakki Haris

Menulis materi pemrograman dan artikel teknis di ScriptCrumbs.

Baca Juga

Sampul artikel HTML Semantik dan Aksesibilitas
Web Development

HTML Semantik: Fondasi Website yang Mudah Diakses

Pelajari kapan memakai header, main, nav, article, dan button agar struktur halaman jelas bagi pembaca, pembaca layar, dan mesin pencari.

·2 mnt baca
Sampul artikel perbandingan Flexbox dan CSS Grid
Web Development

Flexbox vs Grid: Kapan Memakai Masing-Masing?

Bingung memilih Flexbox atau CSS Grid? Lihat perbedaan cara kerja, contoh layout navigasi dan kartu, serta aturan praktis untuk proyek web.

·1 mnt baca
Sampul artikel JavaScript DOM dari Nol
Pemrograman

JavaScript DOM dari Nol: Bikin Halaman Interaktif

Kenali DOM lewat contoh tombol penghitung sederhana. Pelajari memilih elemen, menangani klik, memperbarui teks, dan menghindari kesalahan umum.

·1 mnt baca