2010-07-20 11 views
1

Mon client Web nécessite une mise en cache de sortie côté client car il utilise ses propres boutons Précédent et Suivant (qui appellent simplement les boutons Précédent/Suivant du navigateur).ASP.NET: Effacer le cache de sortie client lors de la déconnexion

Le problème que j'ai, cependant, est (bien sûr) lorsque l'utilisateur se déconnecte de l'application. Le cache de sortie côté client reste donc n'importe qui peut cliquer sur le bouton «Précédent» et il semble être connecté à nouveau. J'ai recherché quelques solutions, mais la plupart impliquent la mise en cache de sortie côté serveur ou pas de mise en cache de sortie du tout.

J'ai eu du succès avec la mise en cache du serveur et HttpResponse.RemoveOutputCacheItem, mais malheureusement, j'ai besoin de la mise en cache côté client.

Est-il possible d'effacer ce cache de sortie côté client lors de la déconnexion?

Répondre

0

Y a-t-il une raison pour laquelle vous souhaitez supprimer le cache explicitement?

La meilleure façon de vérifier journal utilisateur est d'ajouter une config dans le répertoire courant, par exemple: /section1/web.config

<?xml version="1.0"?> 
<configuration> 

    <system.web> 
    <authorization> 
     <deny users="?"/> 
    </authorization> 
    </system.web> 

</configuration> 

Dans la principale web.config vous pouvez définir la page de redirection si l'utilisateur n'est pas validé.

Connectez-vous aux utilisateurs avec l'appartenance system.web.security. Lorsque vous déconnecter est poussé, vous pouvez utiliser les membres loggedintemplate ou les connecter explicitement à l'aide:

FormsAuthentication.SignOut(); 

De cette façon, vous assurer la sécurité et garder vous cache de page.