IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Durée de Session


Sujet :

ASP.NET

  1. #1
    Membre éclairé
    Inscrit en
    Juillet 2010
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Juillet 2010
    Messages : 292
    Par défaut Durée de Session
    Bonjour à tous,

    Je travaille sur un site web avec Visual Studio. J'utilise Session lorsque la connexion d'un membre est réussie. Mais j'ai remarqué que la durée d'une session était limitée. J'ai vu que la propriété Timeout est égale à 20 (20 minutes si je ne me trompe pas).

    Peut-on modifier cette propriété pour que le membre soit connecté plus longtemps ou est-il préférable de le déconnecter automatiquement après que 20 minutes soient passées ?

    Merci d'avance de vos réponses.

  2. #2
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Citation Envoyé par Juju54350 Voir le message
    Bonjour à tous,

    Je travaille sur un site web avec Visual Studio. J'utilise Session lorsque la connexion d'un membre est réussie. Mais j'ai remarqué que la durée d'une session était limitée. J'ai vu que la propriété Timeout est égale à 20 (20 minutes si je ne me trompe pas).

    Peut-on modifier cette propriété pour que le membre soit connecté plus longtemps ou est-il préférable de le déconnecter automatiquement après que 20 minutes soient passées ?

    Merci d'avance de vos réponses.
    Tu peux modifier

  3. #3
    Membre éclairé
    Inscrit en
    Juillet 2010
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Juillet 2010
    Messages : 292
    Par défaut
    Mais vu que la session porte un nom, si je mets Session.Timeout = 150 ce sera la session en cours qui sera affectée ?

    Mais aussi quelle est la quantité idéale à mettre ? Elle ne peut pas être illimitée ?

  4. #4
    Membre éclairé Avatar de SonnyFab
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2010
    Messages : 498
    Par défaut
    Je pense que c'est toutes les sessions qui ouvriront cette page

  5. #5
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Citation Envoyé par Juju54350 Voir le message
    Mais vu que la session porte un nom, si je mets Session.Timeout = 150 ce sera la session en cours qui sera affectée ?

    Mais aussi quelle est la quantité idéale à mettre ? Elle ne peut pas être illimitée ?
    Je pense que tu confonds session et variables de session.

    Si tu veux une session illimitée, va falloir partir sur un système de cookie persistant et de reconnexion automatique

  6. #6
    Membre éclairé
    Inscrit en
    Juillet 2010
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Juillet 2010
    Messages : 292
    Par défaut
    Ah d'accord, parce qu'en fait le truc c'est que j'utilise Session pour récupérer les données d'un membre dès qu'il s'est connecté :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    mypanelmember member = getMyPanelInformation.getPanelMemberinfo(TxtBEmail.Text); 
    Session.Add("oMyPanelMember", member);
    Et j'aimerais que le membre soit toujours connecté (la session est annulée seulement s'il se déconnecte lui-même).
    Y a-t-il une classe spéciale pour les cookies ?

  7. #7
    Membre éclairé
    Inscrit en
    Juillet 2010
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Juillet 2010
    Messages : 292
    Par défaut
    J'ai un autre souci :

    Admettons que j'ai mis "Session.Timeout = 1;", dans une minute, la session sera expirée. Mais peut-on faire un rafraîchissement de la page lorsque la session expire ?

    Si oui comment, car je ne peux pas utiliser Response.Redirect() dans le Page_Load d'une page .aspx.

  8. #8
    Membre Expert
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Par défaut
    Le Timeout de la session est un évènement côté serveur, et le refresh de la page (ou du moins la requête pour demander un refresh) doit venir d'un client. Ce n'est donc pas possible directement lors de la fin d'une Session de lancer un refresh du navigateur du client.

    Ce que tu peux faire par contre, c'est de checker de façon répétée en ajax, côté client, si la session ne va pas bientôt se terminer sur le serveur. Et si tu détectes qu'il reste moins d'une minute, alors tu peux lancer une nouvelle requête.

    Ce sujet a été abordé plusieurs fois sur le forum. Mais dans tous les cas, ce n'est pas évident de détecter et gérer un fin de session côté client.

    En espérant t'avoir aidé.

  9. #9
    Membre éclairé
    Inscrit en
    Juillet 2010
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Juillet 2010
    Messages : 292
    Par défaut
    Donc genre si le Timeout est égal à une minute, je dois recréer une session ?

    Mais je ne vois pas comment faire ça en Javascript...

  10. #10
    Membre Expert
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Par défaut
    Avec cette recherche Google tu devrais trouver ton bonheur.

    Sinon comme je l'ai dis, une recherche sur le présent forum te donnera la réponse également.

  11. #11
    Membre éclairé
    Inscrit en
    Juillet 2010
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Juillet 2010
    Messages : 292
    Par défaut
    Merci bien Nico

    Mais une autre chose que je voulais savoir : mettre Response.Redirect() dans l'événement Load de la page fait planter le chargement du navigateur (il n'arrive pas à rediriger la page demandée). Est-ce normal ?

  12. #12
    Membre éclairé
    Inscrit en
    Juillet 2010
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Juillet 2010
    Messages : 292
    Par défaut
    Je suis un peu bloqué sur mon histoire de session. J'utilise ce code lorsque je me connecte sur mon site :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Session.Add("oMyPanelMember", member);
    Session.Timeout = 1;
    Donc dans une minute, la session est expirée. Mais existe-t-il une méthode "SessionExpired" ou quelque chose du genre ?

    En fait, je voudrais rediriger vers la page d'accueil du site lorsque la session expire. J'ai entendu dire sur un autre topic qu'on pouvait faire ça avec du Javascript. Mais même en ayant cherché sur le Net, je ne vois pas comment faire...

  13. #13
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    La session expire côté serveur, donc si tu souhaites rediriger automatiquement ton user, tu ne pourras pas.
    Tu dois attendre qu'il fasse une nouvelle requête au serveur et là, tu pourras le rediriger vers la page adéquate

  14. #14
    Membre éclairé
    Inscrit en
    Juillet 2010
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Juillet 2010
    Messages : 292
    Par défaut
    Comment ça qu'il fasse une nouvelle requête au serveur ?

    En clair, je ne peux pas faire de redirection quand une session expire en ASP.NET.

  15. #15
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Le serveur ne peut répondre au client que suite à une requête de ce dernier.
    C'est le protocole qui veut ça

Discussions similaires

  1. [phpMyAdmin] Problème de durée de session sous phpMyAdmin
    Par AAlain dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 25/01/2011, 19h05
  2. [Cookies] limiter durée de session
    Par flydragon dans le forum Langage
    Réponses: 12
    Dernier message: 14/06/2006, 16h03
  3. [Sécurité] Problème durée de session
    Par flydragon dans le forum Langage
    Réponses: 10
    Dernier message: 15/05/2006, 09h19
  4. [JSF] Durée des sessions
    Par bslota dans le forum JSF
    Réponses: 1
    Dernier message: 18/01/2006, 10h04
  5. [VB.NET] Durée de session limitée ?
    Par Pari dans le forum ASP.NET
    Réponses: 3
    Dernier message: 28/04/2004, 16h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo