0
votes

Laravel - Logincontroller :: authentifié () non tiré à chaque connexion?

J'essaie de connecter l'adresse IP et de vous connecter horodatamps lorsque les utilisateurs se connectent à notre système et, afin de le faire, j'ai remplacé la méthode authentifiée () du logincontroller: xxx

La chose étrange est que je puisse voir dans la base de données que la dernière connexion à certains utilisateurs se situe il y a plusieurs jours, que je sache pour un fait qu'ils ont effectué des actions sur le site Web aujourd'hui (tout en étant connectés), comme indiqué par d'autres Journaux ..

est-il une possibilité que l'authentification () ne soit pas tirée, en fonction de la manière dont l'utilisateur se connecte?


0 commentaires

4 Réponses :


0
votes

authentifié () la méthode incendie toujours lorsque l'utilisateur se connecte. Problèmes possibles:

  • Vous n'avez pas ajouté last_login_at et last_ip dans une propriété remplissable de votre modèle utilisateur
  • Les utilisateurs ont vérifié le bouton de mémoire. Dans ce cas, authentifié () méthode ne tire pas

1 commentaires

Merci .. pas de chance ici si. Les attributs sont remplissables (ils sont remplis parfois, mais pas à chaque fois qu'il semble) - et "souvenir de moi" est désactivé sur mon système



0
votes

Cela semble bien que la chose que vous avez manquée peut-être la déclaration de retour? Dans ma demande, j'ai une fonctionnalité similaire et travaille bien, essayez ci-dessous -

protected function authenticated(Request $request, $user) {

    $user->last_login_at = Carbon::now();
    $user->last_ip = $request->getClientIp();
    $user->save();

    return redirect()->intended($this->redirectPath());
}


0 commentaires

0
votes

Je ne sais pas comment votre système est configuré, mais vous pouvez toujours essayer d'écouter pour l'événement Connexion qui est tiré chaque fois qu'un utilisateur se connecte via n'importe quel moyen. Cela inclut d'être authentifié après l'expiration de la session et l'utilisateur est automatiquement connecté via le cookie "Souvenez-vous de moi".

dans votre eSefreserviceProvider Vous pouvez ajouter: xxx

Remarque Si votre session n'expire pas ou dure de très longtemps que des utilisateurs puissent rester enregistrés. dans une très longue période.


0 commentaires

0
votes

Si vous utilisez Socialite pour permettre des connexions sociales via Facebook, Google, etc., ceux-ci ne tiendront pas l'événement authentifié. Comme l'a noté un autre utilisateur, il ne tirera également pas déclenché lorsque l'utilisateur a vérifié le bouton N'oubliez pas.


0 commentaires