Routing Dasar
Penjelasan
Route di Ktor didaftarkan di dalam blok routing { } lewat fungsi get(path) { }, post(path) { }, dst — sesuai HTTP method yang dipakai. Di dalam blok handler, tersedia objek call (ApplicationCall) yang membungkus request DAN response sekaligus, mirip peran Context di Echo/Fiber/Gin.
Contoh Konsep
import io.ktor.server.application.*
import io.ktor.server.engine.*
import io.ktor.server.netty.*
import io.ktor.server.routing.*
import io.ktor.server.response.*
fun main() {
embeddedServer(Netty, port = 8080) {
routing {
get("/") {
call.respondText("Selamat datang di CompileDaily Study!")
}
get("/tentang") {
call.respondText("Halaman tentang kami")
}
}
}.start(wait = true)
}
Praktikum
Buat route GET /halo yang merespons teks "Halo dari Ktor!" lewat call.respondText().
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Handler route Ktor adalah SUSPEND FUNCTION (mendukung coroutine) SECARA NATIVE — kamu bisa langsung memanggil fungsi suspend lain (mis. query database async) di dalam blok get { } TANPA wrapper tambahan, beda dari beberapa framework lain yang butuh penanganan khusus untuk kode asynchronous.