Study
Ktor

Route Parameter

Penjelasan

Route bisa menerima parameter dinamis lewat kurung kurawal di path, mis. /produk/{id} — nilainya diakses lewat call.parameters["id"], SELALU string nullable (String?), perlu konversi manual kalau butuh tipe lain.

Contoh Konsep

get("/produk/{id}") {
    val id = call.parameters["id"]
    call.respondText("Menampilkan produk dengan id: $id")
}

get("/kategori/{kategoriId}/produk/{produkId}") {
    val kategoriId = call.parameters["kategoriId"]
    val produkId = call.parameters["produkId"]
    call.respondText("Kategori: $kategoriId, Produk: $produkId")
}

Praktikum

Buat route GET /artikel/{slug} yang merespons teks "Artikel: $slug" memakai call.parameters["slug"].

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

call.parameters["id"] mengembalikan String? (NULLABLE) karena secara teknis parameter itu BISA tidak ada — kalau kamu YAKIN parameternya selalu ada (karena sesuai definisi route), pakai call.parameters.getOrFail("id") yang otomatis melempar exception jelas kalau ternyata tidak ada, daripada null yang diam-diam menyebar ke kode berikutnya.