Response.Cookies: 如何附加带有过期时间的Cookie?

3
在ASP.NET Core 3.1 Web应用程序中使用以下代码:
var cookies = _contextAccessor.HttpContext?.Response?.Cookies;

if (cookies != null && !_contextAccessor.HttpContext.Response.HasStarted)
{
    cookies.Append(key, data);
}

问题

如何添加带有过期时间的 Cookie?IResponseCookies 接口(以及内部底层实现的 ResponseCookies)缺少这样的 Append 重载。这是有意为之的吗,是要朝着 LocalStorage 的方向发展吗?

1个回答

2
请使用带有CookieOptions实例的重载
cookies.Append(
    key,
    data,
    new CookieOptions { MaxAge = TimeSpan.FromDays(1) });

这个示例设置了 MaxAge 属性,但还有一个 Expires 属性。关于它们之间的不同,请参见此处


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接