Développement Laravel : Comment utiliser le Middleware Laravel ?
En tant que framework PHP populaire, Laravel utilise souvent un middleware middleware pendant le processus de développement. Dans cet article, nous aborderons les bases de l'utilisation du middleware Laravel et comment créer et utiliser un middleware personnalisé.
Laravel Middleware Middleware est un mécanisme de filtrage des requêtes HTTP. Ils sont souvent utilisés pour gérer une logique de requête HTTP complexe, telle que l'authentification des utilisateurs, l'octroi d'un accès ou la journalisation des requêtes.
Laravel est livré avec des middlewares intégrés, tels que :
- auth : utilisé pour vérifier si l'utilisateur est connecté.
- throttle : utilisé pour limiter le nombre de requêtes qu'un utilisateur peut effectuer dans un certain laps de temps.
Dans cet article, nous utiliserons le propre middleware de Laravel pour démontrer ces concepts de base. De plus, nous créerons un middleware personnalisé pour montrer comment écrire votre propre middleware.
Utilisation du middleware intégré
Voyons d'abord comment utiliser le middleware intégré dans Laravel. Pour utiliser le middleware intégré, il vous suffit de l'ajouter au tableau $routeMiddleware. Dans le fichier appHttpKernel.php, ce tableau peut être trouvé. Ce tableau contient tous les middlewares par défaut et chaque middleware est associé à une clé.
Par exemple, nous pouvons activer le middleware d'authentification en utilisant le nom de la clé d'authentification :
protected $routeMiddleware = [ 'auth' => IlluminateAuthMiddlewareAuthenticate::class, ];
Laravel prend également en charge le passage paramétré du middleware. Par exemple, si nous voulons utiliser throttle pour limiter l'accès des utilisateurs à 5 pages en 60 secondes, nous pouvons écrire :
protected $routeMiddleware = [ 'throttle' => IlluminateRoutingMiddlewareThrottleRequests::class.':5,60', ];
Remarque : l'ordre des nombres ici est l'ordre inverse des paramètres du constructeur du middleware throttle. En effet, Laravel prend en charge la transmission de paramètres sous forme de chaînes.
Créer un middleware personnalisé
En plus d'utiliser un middleware prédéfini, Laravel prend également en charge la création de votre propre middleware. Voyons comment créer et utiliser un middleware personnalisé.
Pour démontrer cela, nous allons créer un middleware personnalisé appelé MyMiddleware. Ce middleware n'a besoin que de générer le texte avant que la demande ne soit traitée.
Tout d'abord, nous devons créer une classe middleware via la commande artisan :
php artisan make:middleware MyMiddleware
Ensuite, nous devons ouvrir le fichier app/Http/Middleware/MyMiddleware.php et écrire notre logique middleware dans la méthode handle :
<?php namespace AppHttpMiddleware; use Closure; class MyMiddleware { public function handle($request, Closure $next) { echo "My middleware is working!"; return $next($request); } }
In Dans cet exemple, il suffit de sortir un texte avant de traiter la requête. Ce texte peut être n'importe quoi, par exemple vous pouvez afficher des informations de débogage, des journaux ou des messages d'erreur, etc.
Après avoir écrit notre Middleware, nous devons l'enregistrer auprès de l'application Laravel. Dans le fichier app/Http/Kernel.php, nous pouvons ajouter le nom de notre classe middleware au tableau $routeMiddleware. Cela rendra le middleware disponible pour les routes et les contrôleurs.
protected $routeMiddleware = [ 'mymiddleware' => AppHttpMiddlewareMyMiddleware::class, ];
Remarque : Comme vous pouvez le voir, nous utilisons le nom de la classe MyMiddleware comme nom de clé à utiliser ultérieurement dans les routes et les contrôleurs.
Pour utiliser ce nouveau middleware, ajoutez-le simplement au tableau middleware comme d'habitude. Dans notre cas, nous pouvons ajouter ceci aux routes du site :
Route::middleware(['mymiddleware'])->group(function () { // Your routes here });
Désormais, lorsque nous recevons une demande de notre application, notre middleware sera appelé en premier, avant le traitement de la demande.
Résumé
Dans cet article, nous avons discuté des bases du middleware dans Laravel et démontré comment utiliser le middleware intégré de Laravel et comment créer et utiliser un middleware personnalisé. Ceci n'est qu'un exemple simple, la notion de middleware est très importante, ils peuvent être utilisés pour résoudre de nombreux problèmes complexes de gestion des requêtes HTTP. Par conséquent, apprendre à utiliser le Middleware est une étape très importante dans le processus de développement de Laravel.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

TaskManagementToolsAreEssentialforeFeCiveRemoteProjectManagementByprioriTizingTasksAndTrackingProgress.1) UsetoolslikeTrelloandasanatoSetPriorités withLabelsOrtags.2) EmployTools LikejiraandMonday.comForvisualTrackingwithGantTucsandProgressBars.3)

Laravel10enhances performancethroughseveralkeyfeatures.1) introduducesquerybuildercachingtoredatabaseload.2) itoptimiseseloquentmodelloadingwithlazyloadingproxies.3) itimproveSroutingwithewcachingsystem.4) itenhance

Les meilleures stratégies de déploiement d'applications Laravel complètes comprennent: 1. Un déploiement de temps d'arrêt zéro, 2. Déploiement du bleu-vert, 3. Déploiement continu et 4. Canary Release. 1. Le déploiement de temps d'arrêt zéro utilise l'envoyé ou le déploiement pour automatiser le processus de déploiement pour garantir que les applications restent disponibles lorsqu'elles sont mises à jour. 2. Le déploiement bleu et vert permet le déploiement des temps d'arrêt en maintenant deux environnements et permet un retour rapide. 3. Déploiement continu automatiser l'intégralité du processus de déploiement via GitHubactions ou GitLabci / CD. 4. Canary rejette via la configuration Nginx, promouvant progressivement la nouvelle version aux utilisateurs pour assurer l'optimisation des performances et le retrait rapide.

Toscalealaravelapplication efficace, focaledatabasesharding, cache, chargeur et microservices.1) mettant en œuvre un databaseshardingtodistributedataacrossmultipledatabases pour la performance. 2)

Toovercome Communication BarriersInSiStributedTeams, Utilisation: 1) VideoCallsforface-to-faceteraction, 2) setClearResponSetimeExpectations, 3) ChooseAppropriateCommunicationTools, 4) CreateAteamCommunicationGuide, and5)

LaravelbladeenhancesfronttendTemplatingInfull-stackprojectsByOffreringCleanSyntaxandpowerfulfetures.1)

LaravelisidealForfull-stackApplicationsduetoitselegantsyntax, comprehensivecosystem, andpowerfulfeatures.1) useeloquentormforIntivebackendDatamanipulation, butavoidn 1queryissues.2) employbladetetemplatforcleanfrontwiews, étant acautes overusing @ i i i

Forremotework, iusezoomforvideocalls, slackformessaging, trelloforprojectmanagement, andgithubforcodecollaboration.1) zoomisreliableforlaremeetingsbuthastimelitsonthefreeversion.2) slackintegratewelwithother


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

DVWA
Damn Vulnerable Web App (DVWA) est une application Web PHP/MySQL très vulnérable. Ses principaux objectifs sont d'aider les professionnels de la sécurité à tester leurs compétences et leurs outils dans un environnement juridique, d'aider les développeurs Web à mieux comprendre le processus de sécurisation des applications Web et d'aider les enseignants/étudiants à enseigner/apprendre dans un environnement de classe. Application Web sécurité. L'objectif de DVWA est de mettre en pratique certaines des vulnérabilités Web les plus courantes via une interface simple et directe, avec différents degrés de difficulté. Veuillez noter que ce logiciel

MantisBT
Mantis est un outil Web de suivi des défauts facile à déployer, conçu pour faciliter le suivi des défauts des produits. Cela nécessite PHP, MySQL et un serveur Web. Découvrez nos services de démonstration et d'hébergement.

Listes Sec
SecLists est le compagnon ultime du testeur de sécurité. Il s'agit d'une collection de différents types de listes fréquemment utilisées lors des évaluations de sécurité, le tout en un seul endroit. SecLists contribue à rendre les tests de sécurité plus efficaces et productifs en fournissant facilement toutes les listes dont un testeur de sécurité pourrait avoir besoin. Les types de listes incluent les noms d'utilisateur, les mots de passe, les URL, les charges utiles floues, les modèles de données sensibles, les shells Web, etc. Le testeur peut simplement extraire ce référentiel sur une nouvelle machine de test et il aura accès à tous les types de listes dont il a besoin.

PhpStorm version Mac
Le dernier (2018.2.1) outil de développement intégré PHP professionnel

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP
