Bonjour,

N'ayant pas trouver ma réponse sur Laracast je passe par ici voir si mon problème est déjà arrivé à l'un d'entre vous :

Alors voila, sur mon site j'ai paramétré les sessions sur database avec une durée de 120 minutes. Donc dans la logique, tout utilisateur loggé est automatiquement déconnecté après 120 minutes d'inactivité.

Mais non !! :-(
Car sur mon template, j'ai une requete Ajax qui va chercher les notifications chaque minute...par conséquent celà met à jour l'activité de l'utilisateur connecté et il n'est jamais déconnecté...

Il faudrait que ma session ne soit pas mise à jour sur cette méthode mais je ne vois pas comment l'exclure...

J'imagine ne pas etre le seul a avoir developpé une appli avec des notifications Ajax dans Laravel alors si quelqu'un à une piste ou une solution vous me seriez d'une grande aide !!

9 réponses


Est-ce que si ta requete ajax n'envoie pas le cookie de session, cela pourrait marcher ?
je pense à un truc du style :
1- mettre les cookie dans une variable
2- effacer les cookies
3- faire le send ajax
4- restaurer les cookies depuis la variable

Axis
Auteur

salut huggy et merci piur ta reponse mais je n'utilise pas les cookies :-/

Il n'y a pas 36 moyens de gérer une session php, c'est soit par un cookie de session (PHPSESSID), soit par l'url.
Si tu n'as rien précisé, et que les cookies sont activés , c'est par un cookie

Axis
Auteur

La persistance de mes sessions se font bien par cookies mais la session est gerée ds la table sessions.

Si je supprime le cookie avant ma requete ajax ma methode ne s'execute pas puisque l'utilisateur est consideré comme deconnecté.

D'ou ma question , est-ce que ça pourrait marcher ?
On rentre dans des mécanismes propres à Laravel que je ne maitrise pas :-(

Axis
Auteur

Je viens de tester Huggy et ça ne fonctionne pas.
Ma requete AJAX renvoie la page de login...

Axis
Auteur

Personne n'a une petite idée ? :'-(
Meme toute petite je suis preneur lol !

Malheureusement je ne pense pas que ça soit possible, car à partir du moment où tu fais une interaction avec les données utilisateurs, tu perpétues sa session.

Il faudrait passer le userId dans les données ajax et faire en sorte que la notification ne se base pas sur le userId de la session mais sur le userId ajax (c'est surement faisable)