Heim  >  Artikel  >  PHP-Framework  >  Laravel hat das Passwort vergessen

Laravel hat das Passwort vergessen

WBOY
WBOYOriginal
2023-05-20 17:26:07813Durchsuche

Laravel ist ein beliebtes PHP-Webframework, das zu einem der bevorzugten Frameworks für Webentwickler geworden ist. Während sich Laravel weiterentwickelt und aktualisiert, bietet es weiterhin mehr Funktionen und ein besseres Benutzererlebnis. Die Funktion „Passwort vergessen“ von Laravel ist eine der beliebtesten Funktionen, da sie es Benutzern ermöglicht, ihr Passwort per E-Mail zurückzusetzen. In diesem Artikel befassen wir uns mit der Funktion „Passwort vergessen“ von Laravel, einschließlich der Einrichtung und Anpassung sowie der Verwendung mit Ihrer Anwendung.

1. Der Prozess des Vergessens Ihres Passworts

Bevor wir besprechen, wie Sie die Funktion „Passwort vergessen“ einrichten, wollen wir zunächst den grundlegenden Prozess verstehen. In Laravel umfasst der Fluss „Passwort vergessen“ normalerweise die folgenden Schritte:

  1. Der Benutzer geht zur Seite „Passwort vergessen“ und gibt seine E-Mail-Adresse ein.
  2. Die App bestätigt, ob die E-Mail-Adresse einem Benutzer zugeordnet ist.
  3. Wenn die E-Mail-Adresse in der Benutzerdatenbank vorhanden ist, generiert die Anwendung einen Link mit den Informationen zum Zurücksetzen des Passworts und sendet den Link an die E-Mail-Adresse des Benutzers.
  4. Der Benutzer klickt auf den Link und wird zu einer Seite weitergeleitet, die ein Formular zum Zurücksetzen des Passworts enthält.
  5. Der Benutzer gibt ein neues Passwort ein und sendet das Formular ab.
  6. Die Anwendung speichert das neue Passwort in der Benutzerdatenbank und leitet den Benutzer zur Anmeldeseite weiter.

2. Richten Sie die Funktion „Passwort vergessen“ ein

Da wir nun den grundlegenden Vorgang der Funktion „Passwort vergessen“ verstanden haben, sehen wir uns an, wie man sie in Laravel einrichtet.

  1. E-Mail konfigurieren

Zuerst müssen wir E-Mail für unsere Anwendung konfigurieren. Laravel bietet eine bequeme Möglichkeit, E-Mails zu konfigurieren: .env-Dateien. Öffnen Sie Ihre .env-Datei und suchen Sie nach der folgenden Konfiguration:

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=your-gmail-username
MAIL_PASSWORD=your-gmail-password
MAIL_ENCRYPTION=tls

Stellen Sie die obige Konfiguration auf Ihre eigene E-Mail-Serverkonfiguration ein. Sie können @example.com als Standard-Absenderadresse verwenden oder eine gültige Adresse festlegen, die Sie auf Ihrem E-Mail-Server konfiguriert haben. Beachten Sie, dass Sie für diese Konfiguration die Anmeldeinformationen des entsprechenden E-Mail-Dienstanbieters angeben müssen.

  1. Passwort-Reset-Code generieren

Als nächstes müssen wir Laravels eigenen Passwort-Controller generieren und ihn zum Passwort-Reset verwenden. Führen Sie den folgenden Befehl im Terminal aus:

php artisan make:auth

Dieser Befehl generiert den Authentifizierungscontroller und die Ansichten von Laravel, einschließlich des Controllers und der Ansicht zum Zurücksetzen des Passworts. Nach Abschluss verfügt Ihre Laravel-Anwendung über die folgenden Funktionen:

  • Anmelden
  • Registrieren
  • Passwort vergessen
  • Passwort zurücksetzen
  1. Benutzerdefinierte Passwort-Reset-Ansicht

Wenn Sie mit der Generierung des Controllers fertig sind und nach der Anzeige, können Sie Möglicherweise müssen Sie es anpassen. Sie können beispielsweise das Erscheinungsbild von Ansichten oder die von ihnen ausgeführten Aktionen ändern. Dazu können Sie die erforderlichen Ansichtsdateien im Verzeichnis resources/views/auth/passwords finden und anpassen.

  1. Benutzerdefinierte E-Mail-Nachrichten

Die von Laravel standardmäßig bereitgestellten E-Mail-Nachrichten zum Zurücksetzen des Passworts erfüllen möglicherweise nicht Ihre spezifischen Anforderungen. Daher müssen Sie es möglicherweise anpassen. Öffnen Sie dazu die Datei app/Http/Controllers/Auth/ForgotPasswordController.php und passen Sie die E-Mail-Nachricht in der Funktion sendResetLinkEmail() an. Sie können Ihre Nachricht mit Code wie diesem anpassen:

return $this->sendResetLinkFailedResponse($request, 'This is a custom message');

Diese Codezeile wird ausgelöst, wenn kein Benutzer gefunden wird, der der angegebenen E-Mail-Adresse zugeordnet ist. Sie können die benutzerdefinierte Nachricht durch eine beliebige Nachricht ersetzen.

3. Verwenden Sie die Funktion „Passwort vergessen“ mit Ihrer Anwendung

Nachdem wir die Funktion „Passwort vergessen“ erfolgreich eingerichtet und angepasst haben, können wir sie mit unserer Laravel-Anwendung verwenden. Dazu müssen Sie Ihrer Bewerbung die entsprechenden Routen hinzufügen. Diese Routen werden normalerweise in der Datei „routes/web.php“ definiert.

Hier ist eine Beispielroute für ein vergessenes Passwort aus der Datei „routes/web.php“:

Route::get('forgot-password', 'AuthForgotPasswordController@showLinkRequestForm')->name('password.request');
Route::post('forgot-password', 'AuthForgotPasswordController@sendResetLinkEmail')->name('password.email');
Route::get('reset-password/{token}', 'AuthResetPasswordController@showResetForm')->name('password.reset');
Route::post('reset-password', 'AuthResetPasswordController@reset')->name('password.update');

In diesen Routen ist „Auth“ der von Laravel generierte Controller-Pfad. Sie können es basierend auf den Namen Ihrer eigenen Controller und Ansichten ändern.

Da wir nun die Route zur Anwendung hinzugefügt haben, erstellen wir einen Link. Sie können Ihrer Ansichtsdatei den folgenden Code hinzufügen:

<a href="{{ route('password.request') }}">Forgot your password?</a>

Wenn der Benutzer nun auf den Link oben klickt, wird er zur Seite „Passwort vergessen“ weitergeleitet und kann seine E-Mail-Adresse eingeben, um sein Passwort zurückzusetzen.

Fazit:

In diesem Artikel haben wir die Funktion „Passwort vergessen“ von Laravel besprochen. Wir haben zunächst den grundlegenden Prozess des Vergessens von Passwörtern verstanden und dann die Funktion für vergessene Passwörter erfolgreich eingerichtet und angepasst, indem wir E-Mails konfiguriert, Codes zum Zurücksetzen von Passwörtern generiert, Ansichten zum Zurücksetzen von Passwörtern und E-Mail-Nachrichten angepasst haben. Schließlich verwendeten wir es in unserer Anwendung und verknüpften es mit den notwendigen Routing- und Seitenlinks. Mit der Funktion „Passwort vergessen“ von Laravel können wir die Sicherheit und Benutzererfahrung unserer Anwendungen ganz einfach verbessern.

Das obige ist der detaillierte Inhalt vonLaravel hat das Passwort vergessen. 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:Laravel-Delete-MigrationNächster Artikel:Laravel-Delete-Migration