Dans mon asp.net mvc où mettre du code pour expirer la session du navigateur lorsque la session du serveur expire. Puis-je utiliser un attribut d'action? Quel devrait être le meilleur?Quelle est la meilleure façon d'expirer la session client?
Répondre
EDIT
Sur la base de votre commentaire, je suggère la manipulation de ce via un contrôleur de base personnalisé que tous vos autres contrôleurs tireraient de. Avoir le contrôleur de base personnalisé remplacer OnActionExecuting et vérifier un état expiré. Si l'état a expiré, supprimez le cookie d'authentification de la réponse (FormsAuthentication.SignOut) et définissez la propriété Result sur le paramètre ActionExecutingContext à HttpUnauthorizedResult. Alternativement, vous pouvez simplement rediriger vers une action Déconnexion.
Vous devez également vous assurer que le délai d'expiration de votre session et le délai d'expiration du cookie d'authentification par formulaires sont les mêmes.
réponse originale pour le contexte laissé
Je ne sais pas exactement ce que vous demandez. Lorsque la session de serveur expire, le ticket d'authentification dans le cookie n'est plus valide. Toute action nécessitant une autorisation (qui requiert une authentification minimale) doit récupérer un HttpUnauthorizedResult, qui redirige par défaut vers la page d'ouverture de session Forms.
Demandez-vous comment expirer la session côté client de sorte que le client fasse quelque chose même en l'absence de demande? Si oui, vous pourriez être intéressé par la façon dont je gère cela via javascript/ajax. Voir mon blog sur client-side session termination au http://farm-fresh-code.blogspot.com.
Je pense que vous voulez effacer l'historique du navigateur après la déconnexion de l'utilisateur.
IMHO la question concerne l'invalidation de la session * côté serveur *. – Boldewyn
- 1. Quelle est la meilleure façon de rejouer une "session"
- 2. Quelle est la meilleure façon de concevoir une API client?
- 3. Quelle est la meilleure façon de lancer le client exe?
- 4. Quelle est la meilleure façon d'exécuter `sum_by_sql`?
- 5. Quelle est la meilleure façon d'implémenter hashCode()?
- 6. Quelle est la meilleure façon d'apprendre WebGL
- 7. Quelle est la meilleure façon d'apprendre CUDA?
- 8. Quelle est la meilleure façon d'interroger cela?
- 9. Quelle est la meilleure façon d'apprendre WCF?
- 10. Quelle est la meilleure façon de charger la balance? PHP
- 11. Quelle est la meilleure façon de stocker la date?
- 12. Quelle est la meilleure façon de créer une session à la fois? (ASP.NET, MVC)
- 13. Quelle est la meilleure façon de garder la session en vie?
- 14. Quelle est la meilleure façon d'utiliser l'API Twitter via PHP?
- 15. Quelle est la meilleure façon de suivre les visiteurs uniques?
- 16. Quelle est la meilleure façon de démarrer ce programme?
- 17. Quelle est la meilleure façon de documenter la commutation intentionnelle?
- 18. Quelle est la meilleure façon d'étendre la fonctionnalité?
- 19. Quelle est la meilleure façon de créer la classe d'usine
- 20. Quelle est la meilleure façon de détecter la couleur blanche?
- 21. Quelle est la meilleure façon d'obtenir la longueur d'un NSBezierPath?
- 22. quelle est la meilleure façon de diviser la chaîne
- 23. Quelle est la meilleure façon de manipuler la chaîne suivante?
- 24. python - Quelle est la meilleure façon d'activer/désactiver la journalisation?
- 25. Quelle est la meilleure façon de vérifier la correspondance dans
- 26. Quelle est la meilleure façon d'écrire la population de contenu?
- 27. Quelle est la meilleure façon de lire le secret de session Rails?
- 28. Quelle est la meilleure façon de se déconnecter d'un autre utilisateur de sa session sur macOS?
- 29. Quelle est la meilleure façon de gérer ses variables de session?
- 30. Quelle est la meilleure façon d'implémenter un bouton de fermeture de session dans Asp.Net
Dans ce cas, la session sur le service d'état de la session expire donc le cookie du client est toujours valide que je dois expirer – mamu
J'ai mis à jour ma réponse en fonction de votre commentaire. – tvanfosson