web-dev-qa-db-fra.com

Comment définir la valeur du cookie?

Je fais ce qui suit pour définir une valeur de cookie:

HttpCookie mycookie = new HttpCookie("mycookie");
mycookie.value = "value1";
mycookie.Expires = DateTime.Now.Add(1);
HttpContext.Current.Response.Cookies.Add(mycookie);

Quelque temps plus tard, je vérifie le cookie en utilisant:

HttpCookie mycookie = HttpContext.Current.Request.Cookies["mycookie"];

Je remarque qu'il a toujours une valeur plus ancienne:

mycookie.value == "oldValue"

Je peux même vérifier le cookie immédiatement après l'avoir défini et la valeur que j'ai définie n'est pas là. C'est toujours l'ancienne valeur.

Que se passe-t-il si la valeur n'est pas définie et comment puis-je la définir?

8
4thSpace

Essayez ceci, vous devez le supprimer, puis l'ajouter.

var response = HttpContext.Current.Response;
response.Cookies.Remove("mycookie");
response.Cookies.Add(cookie);
9
eric_eri

 

<script type="text/javascript">
<!--
function WriteCookie()
{
    if(document.myform.customer.value==""){
    alert("Enter some value!");
    return;
    }
    cookievalue=escape(document.myform.costomer.value)+";";
    document.cookie="name="+cookievalue;
    document.write("Setting Cookies:"+"name="+cookievalue);

}
//-->
</script>
</head>
<body>
<form name="myform" action="cook.html">
Enter name:<input type="text" name="customer"/>
<input type="button" value="set Cookie" onclick="WriteCookie();"/>
</form>
</body>
</html>
0
Phyo Thu Aung