Heim  >  Artikel  >  PHP-Framework  >  So implementieren Sie den Middleware-Sprung in Laravel 5.4

So implementieren Sie den Middleware-Sprung in Laravel 5.4

PHPz
PHPzOriginal
2023-04-23 09:16:21653Durchsuche

Vor Laravel 5.4 konnten wir Middleware verwenden, um die Sprungfunktion zu implementieren. Allerdings ist die Laravel 5.4-Middleware anders implementiert. In diesem Artikel besprechen wir, wie man Middleware-Sprünge in Laravel 5.4 implementiert.

1. Implementieren Sie den Middleware-Sprung in Laravel 5.4.

In Laravel 5.4 können wir die Funktion „redirect()“ und die Funktion „with()“ verwenden, um den Middleware-Sprung zu implementieren. Schauen wir uns ein Beispiel an:

  1. Erstellen Sie eine Protokoll-Middleware.

Erstellen Sie im Verzeichnis app/Http/Middleware eine LogMiddleware.php-Datei mit folgendem Inhalt:

<?php

namespace App\Http\Middleware;

use Closure;
use Illuminate\Support\Facades\Log;

class LogMiddleware
{
    public function handle($request, Closure $next)
    {
        Log::info(&#39;LogMiddleware&#39;);
        return $next($request);
    }
}

Der obige Code erstellt eine Protokoll-Middleware mit dem Namen LogMiddleware. Die Middleware zeichnet ein Protokoll in der Handle-Funktion auf.

  1. Erstellen Sie eine Autorisierungs-Middleware

Erstellen Sie im Verzeichnis app/Http/Middleware eine AuthMiddleware.php-Datei mit folgendem Inhalt:

<?php

namespace App\Http\Middleware;

use Closure;

class AuthMiddleware
{
    public function handle($request, Closure $next)
    {
        if (!auth()->check()) {
            return redirect('/login')->with('error', '请先登录!');
        }

        return $next($request);
    }
}

Der obige Code erstellt eine Middleware mit dem Namen AuthMiddleware in der Handle-Funktion. Bestimmen Sie, ob der Benutzer angemeldet ist. Wenn nicht, springen Sie zur Anmeldeseite und speichern Sie die Fehlermeldung in der Sitzung.

  1. Registrieren Sie die Middleware in der Route

Registrieren Sie in der Datei „routes/web.php“ die Route und die Middleware. Der Code lautet wie folgt:

Route::get('/dashboard', function () {
    return view('dashboard');
})->middleware([LogMiddleware::class, AuthMiddleware::class]);

Der obige Code erstellt eine Route mit dem Namen Dashboard im Dashboard Route. unter Verwendung der Middleware LogMiddleware und AuthMiddleware.

  1. Middleware-Sprung implementieren

Wenn Sie direkt auf die Seite http://yourdomain/dashboard zugreifen, springt diese automatisch zu http://yourdomain/login und speichert die Fehlermeldung in der Sitzung.

2. Zusammenfassung

In Laravel 5.4 können wir die Funktion „redirect()“ und die Funktion „with()“ verwenden, um Middleware-Sprünge zu implementieren. Durch die oben genannten Schritte haben wir erfolgreich eine Middleware-Sprungfunktion implementiert. Ich hoffe, dieser Artikel kann Ihnen hilfreich sein!

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

Stellungnahme:
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