Heim >PHP-Framework >Laravel >So verwenden Sie Laravel, um zu überprüfen, ob der Benutzer angemeldet ist
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('/login'); } 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('/dashboard', function () { return view('dashboard'); })->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!