Cara Membuat Multiple Middleware Laravel 5.6

Assalamualaikum wr wb.
Beberapa hari ini saya sedang fokus dalam membuat project menggunakan laravel, dan ada kebutuhan saya yang mengharuskan membuat middleware. Nah middleware yang saya gunakan itu multiple jadi, saya brosing maka saya menemukan cara menggunakannya dari dokumentasi resmi laravel. Silakan baca disini, nah disana pakai bahasa inggris, kalau bingung dengan bahasa inggris baca aja postingan saya ini.

1. Silakan buat middleware 'php artisan make:middleware IsAdmin'

2. Selanjutnya silakan isi kode berikut ini di file app/Http/Middleware/IsAdmin.php

<?php

namespace App\Http\Middleware;

use Closure;

class IsAdmin
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        if(auth()->check() && $request->user()->role == 'admin'){
            return $next($request);
        }
        return redirect()->guest('/login');
    }
}

3. Register middleware di app/Http/kernel.php

Tambahkan di  protected $routeMiddleware hasilnya setelah ditambahkan maka akan menjadi seperti dibawah ini :

    protected $routeMiddleware = [
        'auth' => \Illuminate\Auth\Middleware\Authenticate::class,
        'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
        'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
        'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class,
        'can' => \Illuminate\Auth\Middleware\Authorize::class,
        'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
        'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class,
        'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
        'admin' => \App\Http\Middleware\IsAdmin::class,
    ];

4. Menerapkan middleware :
Silakan ke routes dan tambahkan method ->middleware('nama midleware')

contoh :

Route::resource('employees', 'EmployeeController')->middleware('admin');

Oke sekian, postnya berantakan karena gak niat nulis.

Subscribe to receive free email updates:

0 Response to "Cara Membuat Multiple Middleware Laravel 5.6"

Post a Comment

1. Berikan Komentar yang Relevan
2. Tidak Mengandung SARA
3. Berkomentar yang Sopan

Konsultasi Aplikasi