Laravel 5.1 Middleware

Innehållsförteckning

I Laravel 5 vi har mellandelen, en ny komponent som liknar filtren, även om det borde vara klart vad de ersätter dem inte, inte heller är de samma.
De filter de fortsätter att leva med mellanprodukter i Laravel 5, och även om jag i framtiden tror att dessa kan elimineras, för tillfället har de inte gjort det, så du kan välja mellan att fortsätta använda filtren som du gjorde eller att använda mellanprogrammet, vilket jag anser vara mer intuitivt.
Laravel innehåller en mellanprogram som verifierar om applikationsanvändaren är autentiserad, detta kommer som standard, och du kan aktivera det med hjälp av de migreringar som Laravel tar med som standard och försöker komma åt / hem.
Fördelen med denna mekanism är en bättre kontroll av de förfrågningar som vår webbplats tar emot, det vill säga att vi skulle lägga till ytterligare lager i vår applikations logik på ett ordnat och korrekt sätt, för de olika affärsmodellerna, och utan att behöva lägg till nya. externa komponenter.
Laravel har en mellanprogram som heter Authenticate och den är värd på App \ Http \ Middleware, här exemplet på autentiserings -mellanprogrammet.

Det vanligaste omfånget för en mellanprogramvara är nivåstyrd autentisering (autentisering). Mycket användbart på webbplatser där det är nödvändigt att sessionerna har vissa privilegier för att kunna se innehållet på vissa sidor.

Hur skapar man ett mellanprogram?


Det första du ska göra är att skapa ett Laravel 5.1 -projekt. Du kan använda kompositören för att uppnå det.
 kompositör installera skapa-projekt laravel / laravel mittprojekt
Senare skriver vi in ​​terminalen / konsolen:
 php hantverkare fabrikat: mellanmaskin TypeMiddleware
Om vi ​​kontrollerar inuti App / Http / Middleware ser vi att en File TypeMiddleware.php har skapats lika med detta:

Nu måste vi ge funktionalitet till denna mellanprogram, för detta skapar vi en ny rutt i routes.php:
 Route :: get ('panel', ['middleware' => 'type', function () {return '';}]);
Om vi ​​försöker ange sökvägen som skapades i föregående steg / panel visas ett fel som indikerar att klassen "typ" inte existerar. Oroa dig inte, detta händer eftersom denna mellanprogram inte har lagts till i vårt register.

Vi måste gå till filen Kernel.php som finns i App / Http och placera dem i den specifika mellanprogramvaran efter sökväg. Eftersom om de placeras globalt, för varje begäran som görs till applikationen, oavsett sökvägen, kommer den att köras, och normalt skulle detta vara ett fel. Så vi deklarerar det i $ routeMiddleware -arrayen.

Om vi ​​försöker nu, DET FUNGERAR, Vid denna tidpunkt borde vi kunna komma åt sökvägen / panelen utan problem och utan att ge oss fel, men kom igen, det här har ingen funktionalitet ännu, till #program.
Vi ska testa verifieringen om typvariabeln är lika med Administrator, sidan kommer att visas; annars gå till början av webbplatsen.

Ett inbyggt plus i Laravel 5.1 är möjligheten att skicka parametrar från rutter:

Och med det här avslutar vi, du vet redan hur du gör din egen mellanvara, kommenterar och delar, tillsammans lär vi oss många fler saker. Hälsningar.Gillade du och hjälpte denna handledning?Du kan belöna författaren genom att trycka på den här knappen för att ge honom en positiv poäng
wave wave wave wave wave