(Ich bin ein Anfänger von Laravel)
Ich verwende Laravel 5.2
. Ich habe die Authentifizierung erfolgreich aktiviert. indem du php artisan make:auth
und stuffs tust.
So funktioniert mein Login.
Jetzt muss ich etwas tun, sobald sich jemand eingeloggt hat. Für ein einfaches Beispiel:
LOGIN:
$request->session()->put('UserAgent', $ClientUserAgent);
ABMELDEN:
$request->session()->forget('UserAgent');
Ich bin nicht sicher, ob es (Dinge wie) hooks
oder Event Listeners
, Event Handlers
oder etwas ähnliches gibt.
Wie kann ich es bitte tun?
Aliefs Antwort funktioniert wie erwartet. Aber wie ich gegooglet habe, ist die Verwendung der Ereignishandler wahrscheinlich der bevorzugte Weg. (Es funktioniert wie benutzerdefinierte Hooks).
Also, ohne Alefs Antwort unten zu beachten, lass mich wählen - & gt; dieser Event-Hander-Ansatz Ich habe es gerade herausgefunden.
Danke an alle!
Für die Post-Anmeldung können Sie das tun, indem Sie App / Http / Controllers / Auth / AuthController.php
ändernFügen Sie authenticated () in diese Klasse ein, um die Standardüberschreibung zu überschreiben:
%Vor%Auch dies in der Klasse enthalten:
%Vor%Fügen Sie für die Abmeldung diese Funktion derselben Klasse hinzu:
%Vor%Und schließe das auch in die Klasse ein:
%Vor%Sie könnten versuchen, Ereignis-Listener für die Auth-Ereignisse einzurichten, die ausgelöst werden.
Sie können einen Listener einrichten, der auf Illuminate\Auth\Events\Login
wartet, um mit dem zu arbeiten, was Sie nach der Anmeldung und Illuminate\Auth\Events\Logout
für die Abmeldung benötigen.
Warum nicht einfach nach
suchen? %Vor% Stellen Sie sicher, dass Sie use Auth;
Für neuere Versionen von Laravel
Wenn Sie nur etwas sehr einfaches tun, dann scheint mir das Erstellen eines Event-Handlers zu viel. Laravel hat zu diesem Zweck eine leere Methode in der Klasse AuthenticatesUsers
.
Platziere einfach die folgende Methode in app\Http\Controllers\LoginController
(überschreibe es):
Tags und Links php authentication laravel-5.2 laravel event-handling