Tutorial Lumen #3 : Cara menggunakan Middleware

Tutorial Lumen #3 : Cara menggunakan Middleware di Lumen – Halo gaes, Apa kabar semuanya ? saya ucapkan selamat datang di kodingin. Spesial malam minggu kali ini saya akan melanjutkan seri tutorial framework Lumen.

Tutorial Lumen #3 : Cara menggunakan Middleware

Pada seri tutorial ke 3 belajar Lumen akan membahas mengenai middleware. Bagi anda yang sudah terbiasa dengan framework, contohnya laravel maka sudah tidak asing lagi dengan fitur middleware.

Middleware ini fitur yang lumayan penting di mana berhubungan dengan kemanan data dengan batasan akses.

Sebenarnya apa sih middleware itu ?

Apa itu Middleware ?

Yuk kita mulai dari pengertian. Middleware adalah mekansime pembatasan akses untuk mengatur permintaan yang masuk ke halaman website atau bisa dikatakan filtering.

Sebagai contoh penggunaan middleware yaitu pembatasan akses terhadap fitur yang ada di web. Ketika sudah melakukan login maka dapat mengakses fitur, sedangkan jika belum maka akan di arahkan ke halaman lain, misalnya ke halaman depan.

Bukan hanya itu saja, contoh lain juga dapat di terapkan untuk membatasai usia akses. Misalnya ketika usia di atas 20 tahun dapat mengakses sedangkan di bawah 20 tahun tidak dapat mengakses.

2 Macam Middleware

Secara umum sebenarnya middleware di bedakan menjadi 2 yaitu berfore dan after, namun kebanyakan orang menganggapnya sama. Maka beruntung lah kalian yang sedang membaca tutoroal lumen kali ini.

Middleware Before adalah Middleware yang belum menerapkan aturan / proses lain sebagai batasan namun di tetap definisikan di middleware. Middleware before ini akan melanjutkan proses permintaan dari HTTP Request.

Sebagai contoh terdapat halaman website dengan end point /data, maka middleware before akan melanjutkan ke ruote terhadap end point tersebut.

Sedangkan middleware after apa ? bisa anda tebak ?

Middleware After adalah middleware untuk melanjutkan terhadap routing yang di tuju ketika sudah memenuhi suatu syarat. Sebagai contoh batasan usia, ketka usia di atas 20 tahun maka akan di lanjutkan, sedangkan jika tidak akan di arahkan pada halaman tertentu.

Yuk sekarang kita buat latihan menggunakan middleware di lumen.

Latihan menggunakan Middleware

Letak pembuatan middleware di lumen yaitu di app/Http/Middleware. Secara default, tedapat 2 middleware bawaan lumen.

Di antara 2 file tersebut terdapat file dengan nama ExampleMiddleware. File itu merupakan contoh kode memakai middleware.

Yuk sekarang kita buat.

Silahkan buat file dengan nama UmurMiddleware.php di app/Http/Middleware. Berikut ini kodenya :

app/Http/Middleware/ UmurMiddleware.php

Perhatikan kode diatas, terdapat sebuah fungsi if, dimana fungsi tersebut di gunakan untuk memeriksa umur, jika umur di bawah 20 tahun akan akan mencetak keteranan. Namun jika di atas 20 tahun dapat melanjutkan sesuai dengan perintah yang ada di routing.

Jika sudah langkah selanjutnya yaitu mendaftarkan middleware di bootstrap/app.php.

Silahkan tambahkan kode berikut ini :

bootstrap/app.php

Registrasi di atas merupakan registrasi dengan middleware yang di panggil secara khusus, dengan key : checkumur dan value : App\Http\Middleware\UmurMiddleware::class.

Di lumen juga dapat menggunakan middleware cakupannya secara global. Artinya ketika program di jalankan maka middleware global di jalankan.

Berikut ini cara penulisan middleware global :

Bentuknya sudah bukan lah key dan value lagi. Namun pada tutorial ini kita akan fokus ke middleware khusus.

Yuk kita terapakn middleware tersebut di routing projek lumen, silahkan buka routes/web.php. dan tambahkan kode berikut ini :

routes/web.php

Perhatikan kode di atas, untuk menggunakan middleware yang sudah di buat hanya dengan menambahkan fungsi middleware di ikuti dengan nama middleware nnya. Routing di atas menggunakan sebuah parameter umur di tandai dengan kode {umur}.

Contoh di atas menggunakan middleware yang di bikin sebelumnya yaitu checkumur.

Sekarang mari kita lihat hasilnya , oh ya jangan lupa hidupkan lumen build serve ya. Jika teman-teman lupa begini perintahnya :

Sekarang kita buka routing dengan 2 kali, yang pertama dengan parameter umur di bawah 20 tahun dan yang kedua di atas 20 tahun.

Silahkan akses dengan URL : http://localhost:8000/belajarMiddleware/19 dan http://localhost:8000/belajarMiddleware/40.

Hasilnya ketika memberikan parameter 19.

Tutorial Lumen #3 : Cara menggunakan Middleware

Hasil ketika memberikan parameter 40.

Tutorial Lumen #3 : Cara menggunakan Middleware

Terlihat jelas perbedaan hasil dari uji coba di atas. Artinya middleware yang kita bikin berhasil.

Apakah anda sudah paham ?

Jika belum silahkan ikuti tutorial ini dengan teliti dan di ulangi lagi ya.

Kesimpulan…

Lumen memiliki fitur middleware dimana gunakan untuk mekanisme batasan akses terhadap end point yang di akses. Untuk fitur projek yang lebih luas cakupannya biasa middleware digunakan untuk proses autentifikasi.

Sekian tutorial lumen yang membahas cara menggunakan Middleware dengan Mudah. Semoga Bermanfaat :).

One comment

  1. sudah ngikutin persis kok error ya?
    errornya seperti ini

    hoops, looks like something went wrong.
    (1/1) ErrorException
    Undefined variable: router

    in web.php line 20
    at Application->Laravel\Lumen\Concerns\{closure}(8, ‘Undefined variable: router’, ‘D:\\xampp\\htdocs\\lumen-newbie\\routes\\web.php’, 20, array(‘app’ => object(Application)))
    in web.php line 20

    at require(‘D:\\xampp\\htdocs\\lumen-newbie\\routes\\web.php’)
    in app.php line 100

    at {closure}(object(Application))

    at call_user_func(object(Closure), object(Application))
    in RoutesRequests.php line 91

    at Application->group(array(‘namespace’ => ‘App\\Http\\Controllers’), object(Closure))
    in app.php line 101

    at require(‘D:\\xampp\\htdocs\\lumen-newbie\\bootstrap\\app.php’)
    in index.php line 14

Leave a Reply