Laravel 5.1-Middleware

In Laravel 5 wir haben die Middleware, eine neue Komponente ähnlich den Filtern, obwohl klar sein sollte, was sie ersetzen sie nicht und sind auch nicht gleich.
Das Filter sie leben weiter mit dem Middleware In Laravel 5, und obwohl ich denke, dass diese in Zukunft beseitigt werden können, ist dies im Moment nicht der Fall, sodass Sie wählen können, ob Sie die Filter weiterhin so verwenden möchten, wie Sie es bisher getan haben, oder die Middleware verwenden, die ich für intuitiver halte.
Laravel enthält eine Middleware, die überprüft, ob der Anwendungsbenutzer authentifiziert ist. Dies ist standardmäßig enthalten, und Sie können sie mithilfe der Migrationen aktivieren, die Laravel standardmäßig mitbringt und versucht, auf / nach Hause zuzugreifen.
Der Vorteil dieses Mechanismus ist eine bessere Kontrolle der Anfragen, die unsere Site erhält, d. h. wir würden der Logik unserer Anwendung auf geordnete und korrekte Weise für die verschiedenen Geschäftsmodelle und ohne Notwendigkeit zusätzliche Schichten hinzufügen neue hinzufügen externe Komponenten.
Laravel hat eine Middleware namens Authenticate und sie wird gehostet auf App \ HTTP \ Middleware, hier das Beispiel der Authentifizierungs-Middleware.

Der häufigste Umfang einer Middleware ist die abgestufte Authentifizierung (Authentifizierung). Sehr nützlich auf Websites, auf denen die Sitzungen bestimmte Berechtigungen haben müssen, um den Inhalt bestimmter Seiten anzuzeigen.

Wie erstellt man eine Middleware?


Als erstes müssen Sie ein Laravel 5.1-Projekt erstellen. Sie können Composer verwenden, um dies zu erreichen.
 Composer install create-project laravel / laravel myproject
Später geben wir das Terminal / die Konsole ein:
 php Handwerker machen: middlware TypMiddleware
Wenn wir in App / Http / Middleware nachsehen, sehen wir, dass eine Datei TypeMiddleware.php gleich dieser erstellt wurde:

Nun müssen wir dieser Middleware Funktionalität geben, dafür erstellen wir eine neue Route in der Routes.php:
 Route :: get ('panel', ['middleware' => 'type', function() {return '';}]);
Wenn wir versuchen, den im vorherigen Schritt / Panel erstellten Pfad einzugeben, wird ein Fehler angezeigt, der darauf hinweist, dass die Klasse "type" nicht existiert. Keine Sorge, dies geschieht, weil diese Middleware nicht zu unserer Registrierung hinzugefügt wurde.

Wir müssen zur Datei Kernel.php gehen, die sich in App / Http befindet, und sie nach dem Pfad in der spezifischen Middleware ablegen. Denn wenn sie global platziert würden, würde jede Anfrage an die Anwendung, unabhängig vom Pfad, auf den zugegriffen wurde, ausgeführt, und normalerweise wäre dies ein Fehler. Also deklarieren wir es im $ routeMiddleware-Array.

Wenn wir es jetzt versuchen, ES KLAPPT, An dieser Stelle sollten wir problemlos und ohne Fehlermeldungen auf den Pfad / das Panel zugreifen können, aber komm schon, dies hat noch keine Funktionalität, um zu #programmieren.
Wir werden die Überprüfung testen, ob die Typvariable gleich Administrator ist, die Seite wird angezeigt; Andernfalls gehen Sie zum Anfang der Site.

Ein integriertes Plus in Laravel 5.1 ist die Möglichkeit, Parameter von Routen zu übergeben:

Und damit sind wir fertig, Sie wissen bereits, wie Sie Ihre eigene Middleware erstellen, kommentieren und teilen, gemeinsam werden wir viele weitere Dinge lernen. Grüße.Hat dir dieses Tutorial gefallen und geholfen?Sie können den Autor belohnen, indem Sie diesen Knopf drücken, um ihm einen positiven Punkt zu geben
wave wave wave wave wave