Cookie失效日期不起作用C#

时间:2017-06-08 14:27:05

标签: c# cookies setcookie httpcookie

我设置了一个像这样的cookie:

protected void SetCookie(bool value, int expiration)
{
    var cookie = Response.Cookies[COOKIE_NAME] ?? new HttpCookie(COOKIE_NAME);
    cookie.Value = value.ToString();
    cookie.Expires = DateTime.UtcNow.AddDays(expiration);
    Response.Cookies.Set(cookie);
}

在SetCookie函数中,当我检查最后一行的cookie时,Expiration设置为明天的日期。

但是,当我在下一页上检索此cookie时加载:

var cookie = Request.Cookies[COOKIE_NAME];

cookie存在,但到期日期是1/1/0001 12:00:00 AM

的默认日期值

1 个答案:

答案 0 :(得分:0)

我认为到期是客户端的事情。浏览器应发送任何未过期的cookie,但不发送过期日期(仅限名称和值)。我认为您应该重新设置并刷新每个请求的到期时间。

这是我找到的第一个格式参考:https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cookie

如果出于某种原因需要检索到期数据服务器端,我会将其包含在cookie内容中或设置辅助cookie以包含该信息。