Asp.net
註銷時刪除 cookie
在首頁的頁面載入中,我設置了這樣的 cookie:-
if (abc == true) { HttpCookie cookie = new HttpCookie("Administrator"); cookie.Value = "Admin"; cookie.Expires = DateTime.Now.AddDays(-1); Response.SetCookie(cookie); }並將cookie用作:-
if (Request.Cookies["Administrator"] != null) { if (Request.Cookies["Administrator"].Value == "Admin") //some code }註銷時,我希望此 cookie 過期或被刪除。所以我寫了: -
Seesion.Abandon();現在,即使在我註銷後,當我重新登錄到首頁時.. 該行
Request.Cookies["Administrator"]仍然不是空的。奇怪的…!請讓我知道這是什麼原因和解決方案。
你可以試試
Session.Abandon(); Response.Cookies.Clear();或者也
YourCookies.Expires = DateTime.Now.AddDays(-1d);連結:http: //msdn.microsoft.com/en-us/library/ms178195%28v=vs.100%29.aspx
來自MSDN 文件,
您不能直接刪除使用者電腦上的 cookie。但是,您可以通過將 cookie 的到期日期設置為過去的日期來指示使用者的瀏覽器刪除 cookie。下次使用者向設置 cookie 的域或路徑中的頁面發出請求時,瀏覽器將確定 cookie 已過期並將其刪除。
你可以這樣做:
if (Request.Cookies["Administrator"] != null) { HttpCookie myCookie = new HttpCookie("Administrator"); myCookie.Expires = DateTime.Now.AddDays(-1d); Response.Cookies.Add(myCookie); }