arrow_back

Introduction aux Middlewares

22 Octobre, 2023 · 3 min read

Bienvenue dans ce tutoriel sur les middlewares de Laravel. Dans ce guide concis, nous plongerons directement au cœur des middlewares de Laravel. Les middlewares sont une partie essentielle du processus de gestion des requêtes de Laravel, vous permettant de filtrer, de modifier ou de manipuler les requêtes HTTP entrantes. Que vous souhaitiez ajouter de l'authentification, de la journalisation ou toute autre logique personnalisée au flux de requêtes de votre application, comprendre et utiliser efficacement les middlewares est essentiel. Commençons.

Création d'un Middleware

Les middlewares de Laravel se trouvent dans le répertoire app/Http/Middleware. Pour créer un nouveau middleware, vous pouvez utiliser l'outil en ligne de commande artisan :

Cette commande créera un nouveau fichier middleware nommé Authenticate.php dans le répertoire app/Http/Middleware.

Création d'Alias

Après la création d'un middleware, vous pouvez l'enregistrer dans le tableau $routeMiddleware/$middlewareAliases situé dans le fichier app/Http/Kernel.php pour l'appeler plus facilement. Voici comment créer un alias pour votre middleware :

Middleware et Réponses

Ce middleware, nommé Authenticate, vérifie si un utilisateur est authentifié. S'il est authentifié, il autorise la requête à se poursuivre ; sinon, il redirige les utilisateurs non authentifiés vers la page de connexion.

Utilisation du Middleware dans web.php

Ce bloc de code applique le middleware auth à un groupe de routes. Le but de cela est d'imposer des exigences d'authentification pour toutes les routes définies au sein de ce groupe. En d'autres termes, seuls les utilisateurs authentifiés pourront accéder aux routes contenues dans ce group :

Conclusion

Ce tutoriel ne couvre qu'une petite partie des vastes fonctionnalités offertes par Laravel. Pour des informations plus détaillées et une exploration approfondie, je vous recommandons vivement de consulter la documentation officielle de Laravel.

Laravel Documentation open_in_new
The code screenshots were made by: ray.so