0
我使用下面的代碼自定義不同的日期「記住我」執行力度:Cookie的到期日期時間,並在客戶端和服務器
FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1, member.UserName, DateTime.Now, DateTime.Now.AddHours(24), true, dataString);
string encTicket = FormsAuthentication.Encrypt(ticket);
HttpCookie faCookie = new HttpCookie(FormsAuthentication.FormsCookieName, encTicket);
faCookie.Expires = ticket.Expiration;
HttpContext.Current.Response.Cookies.Add(faCookie);
但有些用戶無法登陸(出現登錄頁面,即使登錄後)。
看起來問題是由於客戶端的日期與服務器的日期不同而造成的。 那麼,什麼是「記住我」實施的最佳和正確的解決方案。
爲了解決這個問題,我必須刪除此行:
faCookie.Expires = ticket.Expiration;
刪除這條線後,當用戶關閉瀏覽器,他必須登錄(cookie不會繼續存在)。 解決方案是什麼?