Heim >PHP-Framework >Laravel >So verwenden Sie Laravel, um zu überprüfen, ob der Benutzer angemeldet ist

So verwenden Sie Laravel, um zu überprüfen, ob der Benutzer angemeldet ist

PHPz
PHPzOriginal
2023-04-23 09:09:571180Durchsuche

Laravel ist derzeit eines der beliebtesten PHP-Frameworks. Es bietet viele Dienstprogramme und Funktionen, die es Entwicklern ermöglichen, schnell leistungsstarke Webanwendungen zu erstellen. In vielen Webanwendungen müssen Benutzer angemeldet sein, um auf geschützte Seiten zuzugreifen, und wir müssen lernen, wie wir Laravel verwenden, um Benutzer zu authentifizieren, wenn sie angemeldet sind.

In Laravel wird das Benutzerauthentifizierungssystem vom offiziellen Laravel Auth verwaltet. Dieses System bietet viele gängige Authentifizierungsfunktionen, wie z. B. Benutzerregistrierung, Anmeldung und Passwortzurücksetzung. In diesem System verwenden wir Middleware, um zu überprüfen, ob der Benutzer angemeldet ist. Middleware ist ein Anforderungsfilter, mit dem einige Vorgänge ausgeführt werden, bevor die Anforderung die angegebene Route erreicht. Mithilfe von Middleware können wir überprüfen, ob der Benutzer angemeldet ist, sodass wir den Zugriff des Benutzers auf geschützte Seiten einschränken können.

Im Folgenden zeige ich Ihnen, wie Sie mit Middleware überprüfen, ob der Benutzer angemeldet ist. Wir können Laravels eigenen Befehl make:middleware verwenden, um eine neue Middleware zu erstellen. Beispielsweise können wir eine Middleware mit dem Namen „AuthMiddleware“ erstellen.

Wir können den folgenden Befehl ausführen, um AuthMiddleware zu erstellen:

php artisan make:middleware AuthMiddleware

Nachdem der obige Befehl ausgeführt wurde, erstellt Laravel eine AuthMiddleware.php-Datei im Verzeichnis app/Http/Middleware. An diesem Punkt müssen wir unsere Verifizierungslogik in die Handle-Methode dieser Datei schreiben. Hier ist ein Beispiel:

<?php

namespace App\Http\Middleware;

use Closure;
use Illuminate\Support\Facades\Auth;

class AuthMiddleware
{
    public function handle($request, Closure $next)
    {
        if (!Auth::check()) {
            return redirect(&#39;/login&#39;);
        }

        return $next($request);
    }
}

Im obigen Beispiel verwenden wir zunächst die Methode Auth::check(), um zu prüfen, ob der Benutzer bereits angemeldet ist. Wenn der Benutzer nicht angemeldet ist, leiten wir zur Seite /login weiter. Wenn der Benutzer bereits angemeldet ist, lassen wir zu, dass die Anfrage fortgesetzt wird. Dies nennen wir „durch die Middleware“.

Als nächstes müssen wir AuthMiddleware in unseren Routen verwenden. Es gibt zwei Möglichkeiten, wie wir Middleware in der Routendefinition von Laravel verwenden können:

Methode 1: Middleware in der Routendefinition verwenden

Route::get(&#39;/dashboard&#39;, function () {
    return view(&#39;dashboard&#39;);
})->middleware('auth');

Im obigen Code verwenden wir Authentifizierungs-Middleware, um zu überprüfen, ob sich der Benutzer angemeldet hat. Wenn ein Benutzer auf die Seite /dashboard zugreift und nicht angemeldet ist, wird er zur Seite /login weitergeleitet.

Methode 2: Middleware in der Controller-Klasse verwenden

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;

class DashboardController extends Controller
{
    public function __construct()
    {
        $this->middleware('auth');
    }

    public function index()
    {
        return view('dashboard');
    }
}

Im obigen Code verwenden wir AuthMiddleware im Controller. Wenn der Benutzer auf /dashboard zugreift, wird er zur Seite /login umgeleitet, wenn er nicht angemeldet ist .

Da wir nun gelernt haben, wie man mit Laravel überprüft, ob der Benutzer angemeldet ist, können wir Middleware in unseren Controllern und Routen verwenden, um Benutzer am Zugriff auf geschützte Seiten zu hindern. Durch Middleware können wir unsere Anwendungen sicherer und zuverlässiger machen.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Laravel, um zu überprüfen, ob der Benutzer angemeldet ist. 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
Vorheriger Artikel:Was ist Laravel-Benutzer?Nächster Artikel:Was ist Laravel-Benutzer?