Apa itu API & Express JS
Memahami apa itu API, kenapa kita membuatnya, lalu menjalankan server Express pertamamu.
Apa itu API?
API (Application Programming Interface) adalah "pintu layanan" yang dipakai program untuk berbicara dengan program lain. Bayangkan sebuah restoran: kamu (aplikasi) duduk di meja, pelayan (API) mencatat pesananmu, membawanya ke dapur (server + database), lalu mengantar makanan kembali. Kamu tidak perlu tahu cara dapur bekerja — cukup tahu cara memesan.
Contoh nyata: aplikasi cuaca di HP-mu tidak menyimpan data cuaca sendiri. Ia mengirim permintaan (request) ke API, lalu API membalas dengan jawaban (response) berisi data suhu dalam format JSON.
Request dan Response
Semua komunikasi di web mengikuti pola yang sama:
- Klien (browser, aplikasi mobile, aplikasi lain) mengirim request: "tolong berikan daftar buku".
- Server (program yang kita buat) menerima, memproses, lalu mengirim response: "ini daftarnya, kodenya 200 (berhasil)".
Apa itu Express?
Express adalah framework untuk Node.js yang membuat pembuatan server dan API jadi singkat dan rapi. Node.js sebenarnya sudah bisa membuat server sendiri, tetapi kodenya panjang. Express menyederhanakannya: kamu cukup menulis "kalau ada request ke alamat X, jalankan fungsi Y".
Kode server paling sederhana
const express = require('express'); // 1. panggil Express
const app = express(); // 2. buat aplikasi
app.get('/', (req, res) => { // 3. kalau ada request GET ke "/"
res.send('Halo dari Express!'); // balas dengan teks ini
});
app.listen(3000, () => { // 4. nyalakan server di port 3000
console.log('Server berjalan di port 3000');
});
Mari bedah baris demi baris:
require('express')memuat library Express. (Di komputermu sendiri, library ini dipasang dulu dengannpm install express. Di latihan KelasIT sudah tersedia.)express()membuat objekapp, yaitu aplikasi servermu.app.get('/', handler)mendaftarkan sebuah route: "untuk request GET ke alamat /, jalankan handler ini".handlermenerima dua objek:req(isi request dari klien) danres(alat untuk membalas).res.send(...)mengirim response ke klien.app.listen(3000)membuat server "mendengarkan" di port 3000. Port itu seperti nomor pintu di sebuah gedung; alamat lengkapnyahttp://localhost:3000.
Mengirim JSON
API hampir selalu membalas dengan JSON, format teks yang mudah dibaca program dan manusia. Pakai res.json():
app.get('/ping', (req, res) => {
res.json({ pesan: 'pong' }); // klien menerima {"pesan":"pong"}
});
Menjalankan di komputermu
mkdir api-pertama && cd api-pertama npm init -y npm install express # simpan kode di server.js, lalu: node server.js
Buka http://localhost:3000 di browser, dan kamu akan melihat balasan servermu. Selamat, kamu baru saja membuat server!
Di KelasIT
Kamu tidak perlu menginstal apa pun. Tekan Jalankan dan server tiruan akan hidup di browser; sistem penilai mengirim request ke servermu lalu memeriksa balasannya.