Pernahkah Anda melihat URL yang panjang dan bertanya-tanya apa arti dari semua simbol dan teks setelah alamat situs web utama? Bagian tambahan seperti ?status=selesai
atau /pengguna/12345
bukanlah sekadar hiasan. Keduanya adalah cara penting untuk berkomunikasi dengan server, tetapi mereka memiliki peran yang sangat berbeda.
Mari kita ibaratkan dengan sebuah perpustakaan.
Path Parameter adalah seperti nomor rak dan kode unik buku (misalnya, RAK-Fiksi-007
). Anda menggunakannya untuk menemukan satu buku spesifik.
Query String adalah seperti permintaan Anda kepada pustakawan: "Tolong carikan saya semua buku fiksi, yang terbit setelah tahun 2020, dan urutkan dari yang paling tebal."
Memahami perbedaan keduanya adalah kunci, baik bagi Anda yang sedang belajar membuat website (pengembang) maupun bagi Anda yang hanya ingin tahu cara kerja internet.
Apa itu Path Parameter? ????️
Path Parameter (Parameter Jalur) adalah bagian dari "alamat" utama URL itu sendiri. Tugasnya adalah untuk mengidentifikasi satu sumber daya yang unik dan spesifik. Anggap saja ini sebagai alamat pasti sebuah rumah di sebuah jalan.
Karakteristik Utama:
Tujuan: Menemukan satu item spesifik.
Struktur: Menjadi bagian dari jalur (path) URL, dipisahkan oleh garis miring (/
).
Sifat: Biasanya wajib. Tanpa parameter ini, server tidak tahu item mana yang Anda maksud.
Contoh:
Bayangkan Anda ingin melihat profil seorang pengguna di media sosial. URL-nya kemungkinan besar akan terlihat seperti ini:
https://www.media-sosial.com/profil/budi-santoso
Atau saat melihat produk di sebuah toko online:
https://www.toko-online.com/produk/98765
Dalam contoh di atas:
budi-santoso
adalah path parameter yang menunjuk ke profil spesifik milik Budi Santoso.
98765
adalah path parameter yang menunjuk ke produk spesifik dengan ID 98765.
Jika Anda menghapus bagian itu, URL-nya menjadi tidak lengkap. Server akan bingung—profil siapa atau produk apa yang ingin Anda lihat?
Kapan menggunakannya? Saat Anda membutuhkan pengenal unik untuk mengambil data tunggal, seperti ID pengguna, nomor pesanan, atau judul artikel.
Apa itu Query String?
Query String adalah cara untuk memfilter, mengurutkan, mencari, atau mengonfigurasi tampilan dari sebuah daftar data. Query string bukanlah bagian dari alamat inti, melainkan serangkaian "opsi" atau "pertanyaan" tambahan yang Anda ajukan kepada server.
Karakteristik Utama:
Tujuan: Menyaring, mengurutkan, atau memberikan opsi tambahan pada sebuah permintaan.
Struktur: Selalu dimulai dengan tanda tanya (?
) dan terdiri dari pasangan kunci=nilai
. Jika ada lebih dari satu, mereka dipisahkan oleh ampersand (&
).
Sifat: Hampir selalu opsional. Jika Anda menghapusnya, halaman biasanya tetap berfungsi, hanya saja menampilkan data dalam bentuk default (misalnya, tidak difilter).
Contoh:
Anda sedang mencari sepatu lari berwarna hitam dengan ukuran 42 di sebuah toko online, dan ingin diurutkan dari yang termurah. URL-nya akan terlihat seperti ini:
https://www.toko-online.com/cari?q=sepatu-lari&warna=hitam&ukuran=42&urutkan=harga_asc
Mari kita bedah query string-nya (semua setelah ?
):
q=sepatu-lari
: Mencari (query
) item dengan kata kunci "sepatu lari".
warna=hitam
: Memfilter hasilnya agar hanya menampilkan yang berwarna hitam.
ukuran=42
: Memfilter lebih lanjut untuk ukuran 42.
urutkan=harga_asc
: Mengurutkan hasilnya berdasarkan harga termurah (ascending).
Jika Anda hanya mengakses https://www.toko-online.com/cari
, halaman pencarian mungkin tetap muncul, tetapi tanpa filter apa pun. Query string memberikan instruksi tambahan yang lebih spesifik.
Kapan menggunakannya? Saat Anda ingin melakukan paginasi (misal, ?halaman=2
), pencarian (?q=laptop
), atau menerapkan filter apa pun pada sekumpulan data.
Perbandingan Langsung
Fitur | Path Parameter | Query String |
---|---|---|
Analogi | Alamat rumah yang spesifik (Jalan Apel No. 5 ) | Catatan untuk kurir ("Taruh paket di teras" ) |
Tujuan | ???? Mengidentifikasi satu item unik | ⚙️ Memodifikasi daftar item (filter, urutkan) |
Struktur | Bagian dari path URL: /items/123 | Setelah ? : ?key1=value1&key2=value2 |
Sifat | Wajib untuk menemukan item | Opsional, untuk kustomisasi |
Contoh Kasus | GET /pengguna/45 (Ambil pengguna ID 45) | GET /pengguna?kota=jakarta (Ambil semua pengguna dari Jakarta) |
Kesimpulan: Kapan Harus Memilih yang Mana?
Aturannya sederhana:
Jika URL Anda bertujuan untuk menunjuk ke sesuatu yang spesifik (seorang pengguna, sebuah artikel, satu produk), gunakan Path Parameter. Ini membuat URL Anda bersih, mudah dibaca, dan bagus untuk SEO (Search Engine Optimization).
Jika Anda ingin memberikan opsi untuk mengubah bagaimana daftar data ditampilkan (menyaring, mengurutkan, membatasi), gunakan Query String.
Dengan memahami perbedaan ini, Anda tidak hanya lebih mengerti cara kerja web, tetapi juga bisa merancang struktur aplikasi yang lebih logis dan efisien.