Heim >PHP-Framework >Laravel >Laravel implementiert die App-seitige Anmeldung
Mit der zunehmenden Anzahl von Smartphone-Anwendungen steigt die Nachfrage nach der Entwicklung mobiler Anwendungen von Tag zu Tag. Die Benutzeranmeldung ist zu einer der sehr wichtigen Funktionen in mobilen Anwendungen geworden, da die Benutzeranmeldung nicht nur die Sicherheit der Benutzerinformationen schützen kann, sondern auch Erleichtern Sie Benutzern die Anmeldung an verschiedenen Standorten und den schnellen Zugriff auf ihre Informationen auf ihren Geräten. Laravel ist ein beliebtes PHP-Framework, das viele integrierte Funktionen und Erweiterungspakete bereitstellt, um Entwicklern bei der Implementierung verschiedener Funktionen der Anwendung zu helfen, einschließlich der Anmeldefunktion auf der APP-Seite. In diesem Artikel wird erläutert, wie Sie mit Laravel die APP-Anmeldefunktion implementieren.
1. Installation und Konfiguration von Laravel
Bevor Sie mit der Implementierung der APP-Anmeldefunktion in Laravel beginnen, müssen Sie die Laravel-Umgebung installieren und konfigurieren. Stellen Sie zunächst sicher, dass Sie das Composer-Tool installiert haben (https://getcomposer.org/). Führen Sie als Nächstes den folgenden Befehl aus, um Laravel auf Ihrem Computer zu installieren.
composer create-project --prefer-dist laravel/laravel myapp
wobei „myapp“ der Name der Laravel-Anwendung ist, die Sie erstellen möchten.
Nachdem die Installation abgeschlossen ist, können Sie das myapp-Verzeichnis aufrufen und den folgenden Befehl ausführen, um einen lokalen Entwicklungsserver zu starten.
php artisan serve
Besuchen Sie http://localhost:8000, um die Laravel-Willkommensseite anzuzeigen. Als Nächstes müssen Sie das Passport-Erweiterungspaket installieren und konfigurieren, um die Anmeldefunktion auf der APP-Seite zu unterstützen.
Führen Sie den folgenden Befehl aus, um das Passport-Erweiterungspaket zu installieren:
composer require laravel/passport
Nach Abschluss der Installation führen Sie den folgenden Befehl aus, um die erforderlichen Passport-Schlüssel zu generieren:
php artisan passport:keys
Führen Sie als Nächstes den folgenden Befehl aus, um die Passport-Datenbankmigration zu generieren:
php artisan migrate
II. Implementieren Sie die APP-seitige Anmeldefunktion
Zuerst müssen Sie ein Benutzermodell erstellen, damit die Anwendung Benutzer verwalten kann. Führen Sie den folgenden Befehl aus, um ein Modell mit dem Namen „Benutzer“ zu erstellen:
php artisan make:model User
Erstellen Sie als Nächstes einen Controller mit dem Namen AuthController und fügen Sie den folgenden Code hinzu:
<?php namespace AppHttpControllers; use AppModelsUser; use IlluminateHttpRequest; use IlluminateSupportFacadesAuth; use Validator; class AuthController extends Controller { public function register(Request $request) { $validator = Validator::make($request->all(), [ 'name' => 'required', 'email' => 'required|email|unique:users', 'password' => 'required', ]); if ($validator->fails()) { return response()->json(['error' => $validator->errors()], 401); } $user = new User; $user->name = $request->name; $user->email = $request->email; $user->password = bcrypt($request->password); $user->save(); $token = $user->createToken('MyApp')->accessToken; return response()->json(['token' => $token], 200); } public function login(Request $request) { $validator = Validator::make($request->all(), [ 'email' => 'required|email', 'password' => 'required', ]); if ($validator->fails()) { return response()->json(['error' => $validator->errors()], 401); } $credentials = $request->only('email', 'password'); if (Auth::attempt($credentials)) { $user = Auth::user(); $token = $user->createToken('MyApp')->accessToken; return response()->json(['token' => $token], 200); } else { return response()->json(['error' => 'Unauthorized'], 401); } } }
Im obigen Code ermöglicht die Register-Methode dem Benutzer die Registrierung und die Anmeldemethode Der Benutzer muss sich anmelden. Wenn sich der Benutzer erfolgreich registriert oder anmeldet, wird ein Zugriffstoken zurückgegeben und für nachfolgende Benutzeranfragen verwendet.
Als nächstes müssen Sie entsprechende API-Routen erstellen, um Benutzeranmelde- und Registrierungsanfragen zu verarbeiten. Fügen Sie in der Datei „routes/api.php“ den folgenden Code hinzu:
<?php use IlluminateHttpRequest; use IlluminateSupportFacadesRoute; use AppHttpControllersAuthController; Route::post('/register', [AuthController::class, 'register']); Route::post('/login', [AuthController::class, 'login']);
Der obige Code ordnet Registrierungs- und Anmeldeanforderungen den entsprechenden Methoden im AuthController-Controller zu.
3. Testen Sie die Anmeldefunktion
Da nun der gesamte Code bereit ist, können Sie die Anmelde- und Registrierungsfunktionen testen, indem Sie auf die folgende URL zugreifen.
POST /api/register
POST /api/login
Wenn sich der Benutzer erfolgreich anmeldet, wird ein Token zurückgegeben. Mit diesem Token können nachfolgende API-Anfragen zur Authentifizierung des Benutzers gestellt werden.
$token = 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImZlYTcwMDU3NzhlZWUyMTU3MzliNTM3ODQyNTI0NWJiMGM5YjA3ZWIyMWNlMDhhMDM5ODUyYjczMzVjNWE1NjJlN2UwMGU4ZTQ5MjhhNzg1In0.eyJhdWQiOiIxMSIsImp0aSI6ImZlYTcwMDU3NzhlZWUyMTU3MzliNTM3ODQyNTI0NWJiMGM5YjA3ZWIyMWNlMDhhMDM5ODUyYjczMzVjNWE1NjJlN2UwMGU4ZTQ5MjhhNzg1IiwiaWF0IjoxNjMwMzkwNTM3LCJuYmYiOjE2MzAzOTA1MzcsImV4cCI6MTYzMDM5NDAzNywiZGF0YSI6eyJ1c2VyIjp7ImlkIjoiMSJ9fX0.XsIFsVCc3N1oZ70vzWn4wHQSv3Q-JVdlfu4LJkUPL0he_53bpgJrq5jw8mHygB-1-kpq62N7eG_r08fXKkmbiqeITmUiaGKa0prKzXCoexuYKuxYqG8j-HY2UyDp5g_TE6M4eW5FrcDpTJ0WcQ5ShDhdszUFQUH_qR52ypeEUmsF6CFwx1YJt4AmCFEy2CjsKOMl9K9o0mV_ytvBZ9drY6w6HTRfYfU7q5yuM-W3Qp6bbS-ljzY_2M0RWzwZJm6QvO3Byjhw1TNUrPHFs6xGlY4M7zgkDZxas5srQgpFjKof2LztN7QAJaiT_d6XAKpS24JA2-v2U7x3g'; $response = $this->withHeaders([ 'Authorization' => $token, ])->json('GET', '/api/user');
In diesem Beispiel verwenden Sie das Token, um eine GET-Anfrage an /api/user zu senden, die die Informationen des Benutzers zurückgibt. Wenn die Anmeldung nicht erfolgreich ist, gibt die API den Fehlercode 401 zurück. Wenn die Anmeldung erfolgreich ist, werden die Informationen des Benutzers zurückgegeben.
Es ist sehr einfach, das Passport-Erweiterungspaket in Laravel zu verwenden, um die Anmeldefunktion auf der APP-Seite zu implementieren. Sie müssen lediglich das entsprechende Erweiterungspaket installieren und konfigurieren. In diesem Artikel zeigen wir, wie Sie mit Laravel eine vollständige APP-seitige Anmeldefunktion ausführen und so eine schnelle Anmeldung und Sicherheitsschutz für Benutzer erreichen.
Das obige ist der detaillierte Inhalt vonLaravel implementiert die App-seitige Anmeldung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!