Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Atteint de JavaScriptite Aiguë [Cyril Durand]

Expert ASP.net Ajax et WCF, Cyril Durand parle dans son blog de point techniques sur ASP.net, ASP.net Ajax, JavaScript, WCF et .net en général. Cyril est également consultant indépendant, n'hésitez pas à le contacter pour de l'assistance sur vos projets

Actualités

  • Blog de Cyril DURAND, passionné de JavaScript, Ajax, ASP.net et tout ce qui touche au developpement Web Client-Side.

    N'hésitez pas à me contacter pour vos projets .net : architecture, accompagnement, formation, ...

    View Cyril Durand's profile on LinkedIn
    hit counters


    Expertise Commerce server et BizTalk

Supprimer un cookie en asp.net
Tout à l'heure j'avais un bug sur une de mes pages asp.net, j'ai donc cherché où il se cachait. Aprés quelques essais ce bug se trouvait au niveau des cookies :-( Pour ceux qui ont déjà eu à faire à ce genre de problème, vous savez à quelle point travailler avec les cookies en local n'est pas une science exacte ;-)
 
Je regarde mon code tout me parait correcte, au bout d'une bonne heure de debug intensif je trouve enfin le responsable :

Response.Cookies.Remove("Moncookie")

Aussi étrange que ca peut paraitre cette ligne n'enleve pas le cookie chez le client ! il faut lui mettre une date d'expiration antérieur à aujourd'hui :

Response.Cookies("RichTextMode").Expires = Now.AddYears(-30)

En remplaçant l'autre ligne par celle ci, tout marche enfin correctement. En bon développeur je me suis donc demandé "à quoi peut donc servir cette ligne alors"
un petit tour sur mozbot et je tombe sur cette excellent article traitant des cookies : Basics of Cookies in ASP.NET plus précisement ici
 
"You cannot directly remove a cookie because the cookie is on the user's computer. However, you can get the browser to delete the cookie for you."
 
N'etant pas 100% satisfait de la réponse, je regarde la norme HTTP dans ce petit bouquin trés pratique (que je vous recommande). J'apprend que les cookies ne font pas parties des spécifications HTTP. Il y a seulement 2 "propriétés" d'en tête HTTP pour les cookies: l'une pour les requetes : Cookie et l'autre pour les réponses : Set-Cookie il n'y a donc rien pour supprimer un cookie via HTTP. Voici un petit lien pour en savoir un peu plus sur le fonctionnement des cookies : http://www.commentcamarche.net/securite/cookies.php3

Response.Cookies.Remove("Moncookie") Ne sert donc qu'a enlever le cookie de la collection de cookie de l'objet Request en cours (il n'est donc pas trés utile ;))

je pense que cela sera utile a plusieurs d'entre vous :-)
 
Posted: samedi 11 février 2006 19:50 par cyril
Classé sous :
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Commentaires

Nurgle a dit :

Oui, c'est comme ça depuis le début de l'ASP
(et c'est resté en ASP.NET :( ...)
il a un Remove juste parce que c'est une collection de cookies (System.Web.HttpCookiesCollection), et que normalement, dans une collection, il faut une méthode Remove() !! lol

Pas mal le bouquin sur HTTP, je crois que je vais aller faire un tour à la Fnac un de ces jours... :)
# février 11, 2006 21:52

Poppyto a dit :

Lol j'ai déjà été confronté à ce problème il y a 1 an de cela. C'est logique une fois qu'on sait comment ça marche ^^
# février 12, 2006 00:39
Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- L’application des MiniDrones Parrot est aussi disponible pour Windows 8.1 par Blog de Jérémy Jeanson le 10-28-2014, 15:01

- L’application des MiniDrones Parrot est enfin disponible pour Windows Phone par Blog de Jérémy Jeanson le 10-27-2014, 09:49

- Mise à jour Samsung 840 EVO sur core server par Blog de Jérémy Jeanson le 10-27-2014, 05:59

- MVP Award 2014 ;) par Blog de Jérémy Jeanson le 10-27-2014, 05:42

- « Naviguer vers le haut » dans une librairie SharePoint par Blog de Jérémy Jeanson le 10-07-2014, 13:21

- PowerShell: Comment mixer NAGIOS et PowerShell pour le monitoring applicatif par Blog Technique de Romelard Fabrice le 10-07-2014, 11:43

- ReBUILD 2014 : les présentations par Le blog de Patrick [MVP Office 365] le 10-06-2014, 09:15

- II6 Management Compatibility présente dans Windows Server Technical Preview avec IIS8 par Blog de Jérémy Jeanson le 10-05-2014, 17:37

- Soft Restart sur Windows Server Technical Preview par Blog de Jérémy Jeanson le 10-03-2014, 19:43

- Non, le certificat public du CA n’est pas un certificat client !!! par Blog de Jérémy Jeanson le 10-03-2014, 00:08