Dev Diaries WD logo Dev Diaries WD
LARAVEL INTERVIEW · EP 03
LARAVEL INTERVIEW · Episode 03

Laravel: Middleware (the request filter)

Code that runs before and after your route — auth, logging, headers

app/Http/Middleware/Authenticate.php
<?php
// A middleware receives the request and a $next callback.
class Authenticate
{
    public function handle($request, Closure $next)
    {
        if (! $request->user()) {
            return redirect('/login');   // stop here
        }
        return $next($request);          // pass to the next layer
    }
}

class LogRequest
{
    public function handle($request, Closure $next)
    {
        $response = $next($request);      // let the route run first
        Log::info($request->path());      // ...then act on the way out
        return $response;
    }
}

// Registered per route:
Route::get('/dashboard', [DashboardController::class, 'index'])
     ->middleware([Authenticate::class, 'log']);
Output
Request enters the pipeline → passes each middleware → hits the route.

Dashboard for danny [logged: /dashboard]