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 :

Sessions en ASP.NET


Sujet :

ASP.NET

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 33
    Points : 23
    Points
    23
    Par défaut Sessions en ASP.NET
    Bonjour,

    J'ai une application en C#/ASP.NET qui me pose problème au niveau des sessions.
    Lorsque la connexion dépasse un certain temps, j'affiche bien un message qui redirige vers la page principale de connexion.

    Sauf que c'est le cas quelle que soit la période de connexin, inactivité ou non (en javascript un compteur tout bete).

    De ce fait, en période d'inactivité, j'ai un message d'erreur tout bete d'asp.net
    Je ne sais pas comment rediriger automatiquement vers la page d'accueil en cas d'inactivité (je pense qu'elle est toujours de 20 minutes par défaut). Pourtant, j'ai ajouté dans mon fichier web.config :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <authentication mode="Forms">
    		<forms loginUrl="Default.aspx" protection="All" timeout="60" />
    </authentication>
    Quelqu'un a-t-il une idée?
    merci d'avance

  2. #2
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2004
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2004
    Messages : 53
    Points : 40
    Points
    40
    Par défaut
    Je suis pas sur d'avoir compris mais pour la redirection en cas de timeout :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    private void Page_Load(object sender, System.EventArgs e)
    {
    	if(Session["login"] == null)
    	// si aucune alors on retourne a la page principale
    	Response.Redirect("login.aspx",true);
    }
    nan?

  3. #3
    Expert éminent
    Avatar de Ditch
    Inscrit en
    Mars 2003
    Messages
    4 160
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mars 2003
    Messages : 4 160
    Points : 9 634
    Points
    9 634
    Par défaut
    Les 20 minutes, c'est côté serveur. Cela sous-entend que tu n'es redirigé que lorsque tu questionnes le serveur.

    Par contre, tu peux faire cela en javascript sans problème. La seule chose c'est que quand tu rediriges vers login.aspx, tu ne sais pas vers quelle page il doit être redirigé ensuite tandis que si tu laisses faire ca niveau serveur, c'est bon.

    Evidemment, si tu veux éviter que quelqu'un tape un message (dans un forum par exemple) après 20 minutes d'activité, c'est mieux d'éviter ce retour serveur

    Didier Danse

    Most Valuable Profesionnal SharePoint
    Microsoft Certified Application Developer
    Mes articles sur developpez.com
    Mon site perso


  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 33
    Points : 23
    Points
    23
    Par défaut
    Citation Envoyé par Ditch Voir le message
    Les 20 minutes, c'est côté serveur. Cela sous-entend que tu n'es redirigé que lorsque tu questionnes le serveur.

    Par contre, tu peux faire cela en javascript sans problème. La seule chose c'est que quand tu rediriges vers login.aspx, tu ne sais pas vers quelle page il doit être redirigé ensuite tandis que si tu laisses faire ca niveau serveur, c'est bon.

    Evidemment, si tu veux éviter que quelqu'un tape un message (dans un forum par exemple) après 20 minutes d'activité, c'est mieux d'éviter ce retour serveur
    Bonjour et merci pour vos réponses.
    Le fait est que, le serveur réagissant en cas d'inactivité, comme tu l'as dit, il vide les infos user et du coup la page courant m'affiche une erreur parce qu'il ne trouve plus les bons param, et c'est ce que je veux éviter.

    pour JS, comme j'ai dit, c'est une redirection qu'il soit inactif ou pas, et le fait que ca reagisse mme en activité c'est ce qui me gene aussi.

  5. #5
    Expert éminent
    Avatar de Ditch
    Inscrit en
    Mars 2003
    Messages
    4 160
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mars 2003
    Messages : 4 160
    Points : 9 634
    Points
    9 634
    Par défaut
    Il faudrait essayer de trouver comment dire "je n'ai plus de session --> je ne suis plus authentifié". Ce serait l'idéal.

    Sinon la soluce du redirect fonctionne mais il y a certainement mieux

    Didier Danse

    Most Valuable Profesionnal SharePoint
    Microsoft Certified Application Developer
    Mes articles sur developpez.com
    Mon site perso


Discussions similaires

  1. Réponses: 3
    Dernier message: 20/03/2011, 11h43
  2. Les Sessions de Asp à .Net
    Par Neodream dans le forum Framework .NET
    Réponses: 3
    Dernier message: 31/07/2010, 00h26
  3. Vérrouiller une session en ASP.net
    Par stefsas dans le forum ASP.NET
    Réponses: 7
    Dernier message: 23/04/2010, 15h22
  4. Expiration session sous asp.net 2.0
    Par ouadie99 dans le forum ASP.NET
    Réponses: 5
    Dernier message: 21/04/2009, 20h12
  5. créer session sous ASP.NET
    Par psycho_xn dans le forum Général Dotnet
    Réponses: 9
    Dernier message: 21/12/2007, 18h40

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