Heim PHP-Framework Laravel So schreiben Sie Middleware in Laravel, um den Middleware-Sprung zu implementieren

So schreiben Sie Middleware in Laravel, um den Middleware-Sprung zu implementieren

Apr 03, 2023 pm 06:53 PM

In Laravel ist Middleware eine sehr praktische und wichtige Funktion, die den Prozess zwischen dem Eingang der Anfrage in der Anwendung und der Rückgabe der Antwort an den Client abwickelt. Während dieser Prozesse müssen Sie möglicherweise Vorgänge am Benutzer ausführen, z. B. die Berechtigungen des Benutzers überprüfen oder den Benutzer authentifizieren. Wenn der Benutzer Ihre Prüfung nicht besteht, müssen Sie ihn möglicherweise auf eine andere Seite umleiten. In diesem Artikel wird erläutert, wie Sie Middleware in Laravel schreiben, um den Middleware-Sprung zu implementieren.

1. Middleware erstellen

Schritt 1: Öffnen Sie das Terminal und verwenden Sie den Artisan-Befehl von Laravel, um die Middleware zu erstellen:

php artisan make:middleware <middleware-name>
Nach dem Login kopieren

Zum Beispiel:

php artisan make:middleware EnsureUserIsAdmin
Nach dem Login kopieren

Schritt 2: Erstellen Sie eine neue Middleware im Verzeichnis app/Http/Middleware mit dem Namen Stellen Sie sicher, dass UserIsAdmin ist. Diese Middleware prüft, ob der aktuelle Benutzer bereits angemeldet ist und über Administratorrechte verfügt.

namespace App\Http\Middleware;

use Closure;
use Illuminate\Http\Request;

class EnsureUserIsAdmin {
    public function handle(Request $request, Closure $next){
        if (!auth()->check() || !auth()->user()->is_admin) {
            return redirect('home');
        }

        return $next($request);
    }
}
Nach dem Login kopieren

Im obigen Code verwenden wir zunächst die Funktion auth(), um zu prüfen, ob der aktuelle Benutzer angemeldet ist. Wenn der Benutzer nicht angemeldet ist, leitet diese Middleware zur Startseite weiter. Wenn der Benutzer bereits angemeldet ist, prüfen Sie, ob der Benutzer über Administratorrechte verfügt. Wenn der Benutzer keine Administratorrechte hat, leitet die Middleware auf die Startseite weiter. Andernfalls lässt die Middleware die Fortsetzung der Anfrage zu.

2. Middleware verwenden

Schritt 1: Suchen Sie in der Datei app/Http/Kernel.php das Array $middlewareGroups. Dieses Array enthält die Middleware-Gruppen, die durch die Anwendung weitergeleitet werden müssen.

protected $middlewareGroups = [
    'web' => [
        // ...
    ],

    'api' => [
        // ...
    ],
];
Nach dem Login kopieren

Schritt 2: Geben Sie im Array $middlewareGroups oben eine Gruppe für Ihre neue Middleware wie folgt an:

'admin' => [
    \App\Http\Middleware\EnsureUserIsAdmin::class,
],
Nach dem Login kopieren

Im obigen Code verwenden wir admin als Namen der Middleware-Gruppe sowie das, was wir getan haben in Schritt Der Name der in Schritt 1 erstellten Middleware: ConsiderUserIsAdmin.

Schritt 3: Nachdem wir nun die Middleware selbst erstellt und angegeben haben, wo sie verwendet werden soll, müssen wir nun die Middleware in unserem Router verwenden. Öffnen Sie die Datei „routes/web.php“ und geben Sie an, dass die Route die Admin-Middleware-Gruppe verwendet, wie unten gezeigt:

Route::get('admin/users', 'Admin\UserController@index')->middleware('admin');
Nach dem Login kopieren

In der obigen Routendefinition verwenden wir den Middleware-Gruppennamen „admin“, um die Seite zu schützen, die auf AdminUserController@index zugreift.

3. Testen Sie die Middleware.

Starten Sie abschließend Ihren Entwicklungsserver und testen Sie Ihre neue Middleware. Besuchen Sie die Seite in Ihrem Anwendungsadministrator-Kontrollfeld. Wenn Sie keine Administratorrechte haben, sollten Sie zur Startseite weitergeleitet werden.

Bitte beachten Sie, dass dieser Artikel zeigt, wie Sie Middleware erstellen, um Middleware-Sprünge in der Laravel 5.7-Version zu implementieren. Bei anderen Versionen kann es etwas anders sein.

Zusammenfassung

Middleware ist eine sehr nützliche Funktion im Laravel-Framework, die problemlos auf Benutzer zugreifen und Middleware-Sprünge implementieren kann. In diesem Artikel haben wir erläutert, wie Sie Middleware erstellen und verwenden und wie Sie sie zum Schutz bestimmter Seiten oder Ressourcen verwenden. Für Entwickler, die die Sicherheit ihrer Anwendungen stärken möchten, ist Middleware ein hervorragendes Werkzeug, um dieses Ziel zu erreichen.

Das obige ist der detaillierte Inhalt vonSo schreiben Sie Middleware in Laravel, um den Middleware-Sprung zu implementieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie verwende ich die Komponenten von Laravel, um wiederverwendbare UI -Elemente zu erstellen? Wie verwende ich die Komponenten von Laravel, um wiederverwendbare UI -Elemente zu erstellen? Mar 17, 2025 pm 02:47 PM

In dem Artikel wird das Erstellen und Anpassen wiederverwendbarer UI -Elemente in Laravel mithilfe von Komponenten ermittelt, die Best Practices für die Organisation anbieten und Vorschläge für Verbesserungspakete vorschlagen.

Wie erstelle und verwende ich benutzerdefinierte Blade -Direktiven in Laravel? Wie erstelle und verwende ich benutzerdefinierte Blade -Direktiven in Laravel? Mar 17, 2025 pm 02:50 PM

In dem Artikel wird das Erstellen und Verwenden benutzerdefinierter Blade -Richtlinien in Laravel erläutert, um die Vorlagen zu verbessern. Es umfasst die Definition von Direktiven, die Verwendung in Vorlagen und die Verwaltung in großen Projekten, um Vorteile wie eine verbesserte Wiederverwendbarkeit von Code und R hervorzuheben

Wie kann ich in Laravel benutzerdefinierte Validierungsregeln erstellen und verwenden? Wie kann ich in Laravel benutzerdefinierte Validierungsregeln erstellen und verwenden? Mar 17, 2025 pm 02:38 PM

In dem Artikel wird das Erstellen und Verwenden von benutzerdefinierten Validierungsregeln in Laravel erläutert und bietet Schritte zur Definition und Implementierung. Es zeigt Vorteile wie Wiederverwendbarkeit und Spezifität und bietet Methoden zur Erweiterung des Laravel -Validierungssystems.

Wie benutze ich Laravels handwerkliche Konsole, um gemeinsame Aufgaben zu automatisieren? Wie benutze ich Laravels handwerkliche Konsole, um gemeinsame Aufgaben zu automatisieren? Mar 17, 2025 pm 02:39 PM

Laravels Artisan Console automatisiert Aufgaben wie das Generieren von Code, das Ausführen von Migrationen und die Planung. Zu den wichtigsten Befehlen gehören: Controller, Migrieren und DB: Saatgut. Benutzerdefinierte Befehle können für bestimmte Anforderungen erstellt werden, um die Workflow -Effizienz zu verbessern.

Wie kann ich die Routing-Funktionen von Laravel verwenden, um seo-freundliche URLs zu erstellen? Wie kann ich die Routing-Funktionen von Laravel verwenden, um seo-freundliche URLs zu erstellen? Mar 17, 2025 pm 02:43 PM

In dem Artikel werden Laravels Routing verwendet, um SEO-freundliche URLs zu erstellen, die Best Practices, kanonische URLs und Tools für die SEO-Optimierung abdecken.

Was ist besser, Django oder Laravel? Was ist besser, Django oder Laravel? Mar 28, 2025 am 10:41 AM

Sowohl Django als auch Laravel sind Full-Stack-Frameworks. Django eignet sich für Python -Entwickler und komplexe Geschäftslogik, während Laravel für PHP -Entwickler und elegante Syntax geeignet ist. 1.Django basiert auf Python und folgt der "batteriebetriebenen" Philosophie, die für schnelle Entwicklung und hohe Parallelität geeignet ist. 2. Laravel basiert auf PHP, der die Entwicklererfahrung betont und für kleine bis mittlere Projekte geeignet ist.

Wie verwende ich Datenbanktransaktionen in Laravel, um die Datenkonsistenz sicherzustellen? Wie verwende ich Datenbanktransaktionen in Laravel, um die Datenkonsistenz sicherzustellen? Mar 17, 2025 pm 02:37 PM

In dem Artikel wird die Verwendung von Datenbanktransaktionen in Laravel erörtert, um die Datenkonsistenz aufrechtzuerhalten und Methoden mit DB -Fassade und eloquenten Modellen, Best Practices, Ausnahmebehandlung und Tools zur Überwachung und Debuggierung von Transaktionen aufzunehmen.

Wie kann ich Caching in Laravel implementieren, um die Anwendungsleistung zu verbessern? Wie kann ich Caching in Laravel implementieren, um die Anwendungsleistung zu verbessern? Mar 17, 2025 pm 02:35 PM

In dem Artikel wird in der Implementierung von Caching in Laravel erläutert, um die Leistung zu steigern und die Konfiguration unter Verwendung der Cache -Fassade, Cache -Tags und Atomvorgänge abzudecken. Es beschreibt auch Best Practices für die Cache -Konfiguration und schlägt Daten von Daten zum Cache vor

See all articles