我在使用Chrome时在C#中的Cookie的截止日期有问题。
以下是我正在使用的代码:
public static void createCookie(Users u, DateTime expirationDate)
{
HttpCookie loginCookie = new HttpCookie("cookie");
loginCookie.Value = "somevalue";
loginCookie.Expires = DateTime.UtcNow.AddDays(1d);
HttpContext.Current.Response.Cookies.Add(loginCookie);
}
我通过Fiddler运行此代码,它确实返回了正确的到期日期。在Firefox和IE9中,cookie的到期日期也正确但是,当我在chrome中运行时,到期日总是设置为:Sun,19 Dec 1969 03:28:36 GMT
总是在格林威治标准时间3:28:36,它永远不会改变。任何关于为什么会发生这种情况的想法将不胜感激。谢谢!我还尝试使用:DateTime.Now.AddDays(1d)设置过期日期,结果相同。
答案 0 :(得分:13)
这是当前版本的Chrome中的一个错误,它是显示错误的到期日期,而不是实际的到期日期,您设置的值将受到Chrome的尊重!
这是一个已修复的夜间版本中的错误链接(已验证为20.0.1132.7已修复(官方版本136817)) :http://code.google.com/p/chromium/issues/detail?id=125546