2011-03-24 378 views
0

我遇到問題。我使用cookies完成了自定義的「記住我」功能。Cookie登錄不起作用

HttpCookie rememberMeCookie = FormsAuthentication.GetAuthCookie(userName, rememberMe); 
if (rememberMe) 
{ 
    rememberMeCookie.Expires = Controller.LocalizationProvider.GetAdjustedServerTime().AddMonths(6); 
} 

HttpContext.Current.Response.Cookies.Add(rememberMeCookie); 

我在Firefox中看到firecookies工具中的cookie。它存在且具有正確的到期日期。 但是當我改變時間 - 搬到下個月。之後,我進入了該網站,並取消了用戶的登錄。如果我回到現在的時間 - 我成爲authothication用戶。

回答

1

可能是formsauthentication timeout在您的web.config中存在干擾。下面是MSDN不得不說:

在ASP.NET V1.1永久性Cookie 不會超時,無論 設置超時屬性的。 但是,從ASP.NET V2.0開始, 根據超時屬性,永久性Cookie會超時 。