Comment faire pour supprimer les cookies sur une ASP.NET site web
Dans mon site web lorsque l'utilisateur clique sur le bouton "quitter", la fermeture de la session.aspx chargement de la page avec le code Session.Clear()
.
Dans ASP.NET/C#, est-ce à effacer tous les cookies? Ou est-il un autre code qui doit être ajouté à la suppression de tous les cookies de mon site web?
Vous devez vous connecter pour publier un commentaire.
Essayer quelque chose comme ça:
Mais il est également judicieux d'utiliser
d'ailleurs dans de nombreux scénarios.
Session.Abandon
sera clairement l'ASP.NET cookie de session, mais pas cookies vous définissez manuellement, comme nom d'utilisateur ici. EtCookies["whatever"]
n'est jamais null; le cadre permettra de créer un cookie, si vous demandez à un non-nulle.Cookies["whatever"]
retourne null si le cookie n'existe pas! Je sais que c'est un ancien commentaire, mais je ne veux pas que d'autres lecteurs d'être induit en erreur par ce commentaire.Expires
n'est PAS définie àDateTime.MinValue
que ce sera fait, donner le cookie d'expiration de Session, ce qui signifie qu'il attend jusqu'à ce que le navigateur/onglet (navigateur dépendante) est fermé avant de supprimer le cookie.Non, les Cookies peuvent être nettoyés uniquement par réglage de la date d'Expiration pour chacun d'eux.
Au moment de
Session.Clear()
:Session
collection sont supprimés.Session_End
événement n'est pas arriver.Si vous utilisez cette méthode lors de la déconnexion, vous devez également utiliser le
Session.Abandon
méthode deSession_End
événement:if
ligne ne fonctionne pas réellement. Lorsque vous demandez un cookie avecCookies["whatever"]
le cadre permettra de créer un cookie, si elle n'existe pas.Request
objet.Response
objet. Intéressant 🙂Response.Cookies["UserSettings"].Expires = DateTime.Now.AddDays(-1)
. Ici server demande navigateur pour supprimer les cookies. Le navigateur va le supprimer s'il existe.C'est ce que j'utilise:
Malheureusement, pour moi, le paramètre "date d'Expiration" ne fonctionne pas toujours. Le cookie n'a pas été affectée.
Ce code a fonctionné pour moi:
où
"ASP.NET_SessionId"
est le nom du cookie. Ce n'est pas vraiment supprimer le cookie, mais le remplace par un espace vide cookie, ce qui était assez proche pour moi.Vous devriez ne jamais enregistrer les mots de passe dans un cookie. Pour supprimer un cookie, vous vraiment n'avez qu'à modifier et viennent à échéance il. Vous ne pouvez pas vraiment le supprimer, c'est à dire, retirez le disque de l'utilisateur.
Voici un exemple:
Je veux juste souligner que le cookie de Session n'est pas supprimé lors de l'utilisation de Session.Abandonner comme les autres ont dit.
http://support.microsoft.com/kb/899918
Prendre les OP à la Question du titre de la suppression de tous les cookies "Supprimer les Cookies sur le site web"
Je suis tombé sur le code de Dave Domagala quelque part sur la toile. J'ai édité Dave pour autoriser les cookies de Google Analytics trop - qui boucle à travers tous les cookies trouvés sur le site et de les supprimer tous. (À partir d'un développeur angle - mise à jour du nouveau code dans un site existant, est une belle touche pour éviter les problèmes avec les utilisateurs de revisiter le site).
J'utilise le code ci-dessous en tandem avec la lecture de cookies tout d'abord, la tenue de toutes les données nécessaires - puis réinitialiser les cookies après le lavage de tout nettoyer avec le dessous de la boucle.
Le code:
Plus: Si Vous Utilisez Google Analytics
Au-dessus de la boucle/delete supprimer TOUS les cookies pour le site, donc si vous utilisez Google Analytics - il serait sans doute utile pour se tenir sur l' __utmz cookie comme cela on garde une trace de la provenance du visiteur, ce moteur de recherche a été utilisé, ce lien a été cliqué, ce mot-clé a été utilisé, et où ils étaient dans le monde, quand votre site web a été consulté.
Donc, pour la garder, de les envelopper d'une simple instruction si une fois le nom du cookie est connu:
C'est 2018 maintenant, donc dans ASP.NET de Base, il est directement intégré dans la fonction. Pour supprimer un cookie, essayez ce code:
Si c'est un vieux thread, j'ai pensé que si quelqu'un est toujours à la recherche de solution dans le futur.
C'est ce qu'a fait le tour pour moi.
Réponse.Les Cookies["UserSettings"].Expires = DateTime.Maintenant.AddDays(-1)