如何在ASP.NET Core中设置永不过期的Cookie?

时间:2018-07-26 10:19:19

标签: cookies asp.net-core asp.net-core-2.1

我想要设置一个“永不过期”的cookie,这意味着将其设置为2^31 - 1,这是绝对值/日期而不是偏移量,以避免2038 wrap-around bug

要在ASP.NET Core中设置Cookie,请执行以下操作:

Response.Cookies.Append("name", "value", new CookieOptions() { /*...*/ })

由于该错误,我无法使用DateTime.MaxValue等。 CookieOptions应该使用什么?

1 个答案:

答案 0 :(得分:0)

我决定像这样对值进行硬编码:

var co = new CookieOptions();
co.Expires = new DateTimeOffset(2038, 1, 1, 0, 0, 0, TimeSpan.FromHours(0));

这避免了2038 problem