Routing & Penanganan URL
Mengatur rute HTTP dinamis, method spoofing, dan pendaftaran rute web/API.
Oktober 2026 / v1.1.0Mendefinisikan Rute HTTP
Semua rute web didefinisikan di dalam file dalan/web.ngpk. Router Larapak mendukung seluruh metode HTTP standar:
# dalan/web.ngpk
# Rute HTTP GET dasar
rute.get("/", "HomeController@index")
rute.get("/tentang", "HomeController@tentang")
# Rute dengan aksi Controller
rute.get("/produk", "ProdukController@index")
rute.post("/produk", "ProdukController@simpan")
rute.put("/produk/{id}", "ProdukController@update")
rute.delete("/produk/{id}", "ProdukController@hapus")
Parameter Rute Dinamis
Anda dapat menangkap segmen URL menggunakan kurung kurawal {nama_parameter}:
# Menangkap parameter tunggal
rute.get("/dok/{slug}", "HomeController@bab")
# Menangkap beberapa parameter
rute.get("/artikel/{kategori}/{id}", "ArtikelController@detail")
Di dalam controller, parameter ini dapat dibaca langsung melalui objek req.params:
gawe bab(req, res)
slug = req.params["slug"]
balekna res.view("dok/" + slug, ["slug": slug])
rampung
HTTP Method Spoofing
Karena formulir standar HTML tidak mendukung metode PUT, PATCH, atau DELETE, Larapak menyediakan fitur Method Spoofing melalui field tersembunyi _method atau header HTTP X-HTTP-Method-Override:
<form action="/produk/42" method="POST">
@csrf
<input type="hidden" name="_method" value="PUT">
<label>Nama Produk:</label>
<input type="text" name="nama" value="Kaos Ngapak">
<button type="submit">Perbarui Data</button>
</form>
Inspeksi Rute Melalui Baris Perintah (CLI)
Anda dapat melihat daftar seluruh pemetaan rute HTTP, method, aksi controller, dan middleware yang aktif langsung di terminal:
# Dialek Ngapak Asli
ngapakin dalan:daptar
# Atau menggunakan alias standar
ngapakin route:list
Contoh keluaran di terminal:
Method | Path | Action | Middleware
------------------------------------------------------------------------------------------------
GET | / | HomeController@index | None
GET | /dok/{slug} | HomeController@bab | None
POST | /api/produk | ProdukController@simpan | csrf
GET | /api-studio | StudioController@index | None
Eksplorasi Rute Interaktif: Buka Larapak Route & API Studio (
/api-studio) untuk melihat seluruh daftar rute aplikasi, parameter, dan melakukan simulasi request secara langsung!