Middleware di Elysia-Light

Middleware di Elysia-Light digunakan untuk menangani proses lintas endpoint seperti CORS, parsing body, autentikasi, logging, dan validasi. Elysia-Light mengikuti cara kerja native Elysia, tanpa menambahkan abstraksi tersembunyi, sehingga alur eksekusi middleware tetap eksplisit dan mudah dipahami.

Konsep Dasar Middleware

Middleware adalah fungsi yang dieksekusi sebelum handler endpoint dijalankan. Ia dapat memodifikasi request, menambahkan data ke context, menghentikan request, atau melanjutkan proses ke handler berikutnya. Urutan middleware sangat menentukan alur eksekusi request.

Middleware Global (Chaining di Instance)

Middleware dapat dipasang langsung pada instance Elysia menggunakan chaining. Middleware yang dipasang dengan cara ini akan dieksekusi untuk seluruh request yang masuk ke aplikasi.
Kode berhasil di copy!
5

Tips: Gunakan middleware global hanya untuk kebutuhan lintas endpoint seperti CORS, body parsing, logging, atau error handling.

Middleware di Dalam Group / Root Route

Selain global, middleware juga bisa dipasang di dalam group atau root route. Middleware yang dipasang dengan cara ini hanya akan berlaku untuk endpoint yang didefinisikan setelah middleware tersebut dipanggil.
Kode berhasil di copy!
5

Urutan Eksekusi Middleware

  • Middleware Global → dijalankan pertama
  • Middleware Group / Route → dijalankan sesuai urutan deklarasi
  • Controller / Handler → dieksekusi terakhir

Kapan Menggunakan Middleware Global vs Lokal

  • Global — CORS, body parser, request logger, error handler.
  • Lokal / Group — Auth, permission, role check, validasi khusus.

Best Practice

Pasang middleware sedekat mungkin dengan endpoint yang membutuhkannya. Semakin spesifik middleware, semakin mudah alur request dipahami dan di-debug.