3 Les Bases de Laravel 11 : Middleware

Les middleware fournissent un mecanisme pratique pour inspecter et filtrer les requetes HTTP entrant dans votre application. Laravel inclut des middleware pour diverses taches telles que l'authentification et la protection CSRF. Ce tutoriel couvrira les bases de la creation et de l'utilisation des middleware dans Laravel 11.
Introduction aux Middleware
Les middleware peuvent etre consideres comme des couches que les requetes HTTP traversent avant d'atteindre votre application. Chaque couche peut inspecter et meme rejeter des requetes.
Definir un Middleware
Pour creer un nouveau middleware, utilisez la commande Artisan make:middleware :
php artisan make:middleware EnsureTokenIsValidCette commande cree une nouvelle classe EnsureTokenIsValid dans le repertoire app/Http/Middleware. Voici un exemple de middleware qui verifie un jeton valide :
namespace App\Http\Middleware;
use Closure;
class EnsureTokenIsValid
{
public function handle($request, Closure $next)
{
if ($request->input('token') !== 'my-secret-token') {
return redirect('home');
}
return $next($request);
}
}Enregistrer un Middleware
Pour enregistrer votre middleware, ajoutez-le au fichier app/Http/Kernel.php. Vous pouvez enregistrer un middleware comme global, groupe ou middleware de route.
Middleware Global
Le middleware global s'execute sur chaque requete HTTP vers votre application :
protected $middleware = [
\App\Http\Middleware\EnsureTokenIsValid::class,
// Autres middleware
];Assigner un Middleware aux Routes
Vous pouvez egalement assigner un middleware a des routes specifiques dans votre fichier routes/web.php :
use App\Http\Middleware\EnsureTokenIsValid;
Route::get('/profile', function () {
// Votre code ici
})->middleware(EnsureTokenIsValid::class);Groupes de Middleware
Parfois, vous pouvez vouloir regrouper plusieurs middleware sous une seule cle pour les rendre plus faciles a assigner aux routes. Voici comment definir des groupes de middleware :
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
// Autres middleware
],
'api' => [
'throttle:api',
'bindings',
],
];En savoir plus sur les middleware Laravel dans la documentation officielle de Laravel.
Conclusion
Les middleware sont un outil puissant pour filtrer les requetes HTTP dans les applications Laravel. Ce tutoriel a couvert comment creer, enregistrer et utiliser des middleware dans Laravel 11. Pour des informations plus detaillees, consultez la documentation officielle de Laravel.
Bon codage avec Laravel 11 !
Discutez de votre projet avec nous
Nous sommes ici pour vous aider avec vos besoins en développement Web. Planifiez un appel pour discuter de votre projet et comment nous pouvons vous aider.
Trouvons les meilleures solutions pour vos besoins.
Articles connexes

5 Les Bases de Laravel 11 : Controllers
Un guide informatif sur les bases des controllers dans Laravel 11, adapte aux developpeurs de tous niveaux.

4 Les Bases de Laravel 11 : Protection CSRF
Un article instructif sur la protection CSRF dans Laravel 11.

1 Les Bases de Laravel 11 : PHP en 15 minutes
Un article instructif qui enseigne les bases du langage de programmation PHP.