Heim > PHP-Framework > Laravel > Hauptteil

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

PHPz
Freigeben: 2023-04-03 18:58:11
Original
673 Leute haben es durchsucht

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!

Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage