日期:2014-05-18  浏览次数:20511 次

cookie有效时间出现重大问题,求助!!!
在建立验证票时已经明确定义了过期时间,但是
FormsAuthenticationTicket   ticket   =   new   FormsAuthenticationTicket(1,   tbUser.Text,   DateTime.Now,   DateTime.Now.AddDays(7),   true,   " ");
                               
string   sTicket   =   FormsAuthentication.Encrypt(ticket);

                               
HttpCookie   cookie   =   new   HttpCookie(FormsAuthentication.FormsCookieName,   sTicket);
如果把下面这行去掉的话,过期时间将无效                                
cookie.Expires   =   DateTime.Now.AddDays(7);
                               
Response.Cookies.Add(cookie);

那么验证票里的参数有什么用还???
                               
FormsAuthentication.SetAuthCookie(tbUser.Text,   true);
                               
Response.Redirect( "... ");

------解决方案--------------------
本来cookie值如果不明确指定过期时间就是浏览器关闭才失效的
------解决方案--------------------
Cookie的过期时间是要定义的吧
不写的话表示会话Cookie,不会将cookie保存到本地
------解决方案--------------------
如果不指定过期参数,系统也会默认的帮你指定的,你可以查看ie缓存