2012-04-07 54 views
0

我不知道我在做什麼錯誤,當試圖刪除cookie ...可以有人幫助嗎?這裏是我試圖刪除cookie的代碼。Cookie刪除,有人可以幫助糾正下面的代碼?

if (Request.Cookies["RememberUser"] != null) 
{ 
    HttpCookie objCookie = Request.Cookies["RememberUser"]; 
    objCookie.Expires = DateTime.Now.AddDays(-1d);       
    Response.Cookies.Add(objCookie); 
} 

是上面的代碼是正確的刪除cookie時,由於某種原因,這是行不通的......

,當我試圖用 Response.Cookies.Set(objCookie);更新cookies,這些代碼甚至無法工作。

+0

in msdn it used「new HttpCookie(」UserSettings「);」而不是「request.cookies ....」 – 2012-04-08 00:08:20

+0

不是這種情況。我的意思是我嘗試完全像它在MSDN中提到的,不要在這裏出現問題。 – 2012-04-08 01:14:18

+0

@alirizaadiyahsi此代碼無法正常工作。 ** HttpCookie objCookie =新的HttpCookie(「RememberUser」); objCookie.Expires = DateTime.Now.AddDays(-1d); Response.Cookies.Add(objCookie); ** – 2012-04-08 01:15:11

回答

0

上述代碼有效。我很驚訝爲什麼不能刪除。問題可能出現在您創建的Cookie代碼中。

var cookie = this.Request.Cookies["user"]; 
    if (cookie == null) 
    { 
     cookie = new HttpCookie("user"); 
     cookie.Path = "/"; 
     cookie.Value = "123"; 
     this.Response.Cookies.Add(cookie); 
    } 
    else 
    { 
     cookie.Expires = DateTime.Now.AddDays(-1d); 
     this.Response.Cookies.Add(cookie); 
    } 

第一次訪問沒有來自服務器的cookie和響應頭。

響應頭:

Date: Sun, 08 Apr 2012 02:18:37 GMT 

X-AspNet-Version: 4.0.30319 

Set-Cookie: user=123; path=/ 

與餅乾和響應標頭再次訪問從服務器。

響應頭:

Date: Sun, 08 Apr 2012 02:19:32 GMT 

X-AspNet-Version: 4.0.30319 

Set-Cookie: user=123; expires=Sat, 07-Apr-2012 02:19:32 GMT; path=/ 

和請求頭:

GET/
Cookie: user=123 
..... 

可以使用firebug與Firefox或fiddler軟件來跟蹤響應和請求,看看爲什麼不能刪除cookie.good運氣。

相關問題