0
0
Laravelframework~30 mins

Global middleware in Laravel - Mini Project: Build & Apply

Choose your learning style9 modes available
Creating and Using Global Middleware in Laravel
📖 Scenario: You are building a Laravel web application that needs to log every incoming HTTP request's URL for monitoring purposes.To do this efficiently, you will create a global middleware that runs on every request and logs the URL.
🎯 Goal: Create a global middleware in Laravel that logs the URL of every incoming request.Register this middleware globally so it runs on all routes automatically.
📋 What You'll Learn
Create a middleware class named LogRequestUrl in the app/Http/Middleware directory.
In the middleware, log the current request URL using Laravel's Log facade.
Register the LogRequestUrl middleware globally in the app/Http/Kernel.php file.
Verify the middleware runs on every request by checking the log file.
💡 Why This Matters
🌍 Real World
Global middleware is useful for tasks that must happen on every request, such as logging, security checks, or setting locale preferences.
💼 Career
Understanding global middleware registration and creation is essential for Laravel developers to implement cross-cutting concerns efficiently.
Progress0 / 4 steps
1
Create the LogRequestUrl middleware class
Create a middleware class named LogRequestUrl inside the app/Http/Middleware directory. The class should have a handle method that accepts $request and $next parameters and returns $next($request).
Laravel
Need a hint?

Use the handle method with parameters Request $request and Closure $next. Return $next($request) at the end.

2
Add logging of the request URL in the middleware
Inside the handle method of LogRequestUrl, add a line to log the current request URL using \Log::info($request->url()) before returning $next($request). Make sure to import the Log facade with use Illuminate\Support\Facades\Log;.
Laravel
Need a hint?

Import the Log facade and call Log::info() with the request URL inside the handle method.

3
Register the middleware globally in Kernel.php
Open the app/Http/Kernel.php file. Add the \App\Http\Middleware\LogRequestUrl::class entry to the $middleware array property to register it as global middleware.
Laravel
Need a hint?

In the Kernel class, add \App\Http\Middleware\LogRequestUrl::class inside the $middleware array.

4
Verify the middleware logs URLs on every request
Make a request to any route in your Laravel app. Check the storage/logs/laravel.log file to confirm that the requested URL is logged by the LogRequestUrl middleware.
Laravel
Need a hint?

After registering the middleware globally, any request will trigger the logging. Check the log file to confirm.