2012-08-07 8 views
0

같은 이름, 도메인 및 경로이지만 값이 다른 여러 쿠키가 있습니다. 이것은 의도적 인 것이 아닙니다.이를 수정하려고하지만 삭제할 수는 없습니다. 여러 코드 변형을 시도했습니다.리디렉션 할 때 jQuery 삭제 쿠키가 삭제되지 않습니다.

string[] cookies = Request.Cookies.AllKeys; 
HttpCookie cookie; 
string cookieName; 
string cookieValue; 
for (int i = 0; i < cookies.Count(); i++) 
{ 
    cookieName = Request.Cookies[i].Name; 
    if (cookieName == "ASP.NET_SessionId") 
    { 
    // Do not delete session cookie or we will be logged out 
    continue; 
    } 

    cookieValue = Request.Cookies[i].Value; 
    cookie = new HttpCookie(cookieName); 
    cookie.Value = ""; 
    cookie.Expires = DateTime.Now.AddDays(-1); 
    Response.Cookies.Add(cookie); 
} 

그리고 여기에 또 다른입니다 : 여기에 하나 내가 Request.Cookies에 쿠키를 나열하면, 쿠키 어제의 만료 날짜 표시 "삭제"

string[] cookies = Request.Cookies.AllKeys; 
for (int i = 0; i < Request.Cookies.AllKeys.Count(); i++) 
{ 
    if (Request.Cookies[i].Name == "ASP.NET_SessionId") 
    { 
     // Do not delete session cookie or we will be logged out 
     continue; 
    } 

    Request.Cookies[i].Expires = DateTime.Now.AddDays(-1); 
} 

하지만이 있습니다 다른 쿠키는 만료 날짜가 1/1/0001로 표시됩니다. 이들은 힌트를 얻지 않고 하이킹을하지 않는 것들입니다.

도움 주시면 감사하겠습니다.

+0

인증 쿠키를 지우려는 사용자를 로그 아웃하려면 예를 들어 C# 코드에서 FormsAuthentication.Signout()을 호출하십시오. –

+0

은 예를 들어 올바른 쿠키의 경우입니다. $ .cookie ("UserId", $ .cookie ("userid", – HatSoft

+0

사례가 맞지만 몇 가지 중요한 쿠키가 여러 개있는 것처럼 보입니다.) 모든 쿠키를 삭제하려고 시도했지만 계속오고 있습니다. back –

답변

1

만료 날짜를 1 일 대신 과거로 설정해 보았습니까?

여기에 deleting cookies에 대한 게시물이 있습니다. 그의 코드에서 그는 30 년 전으로 거슬러 올라간다.

쿠키에 도메인을 설정하십시오.

cookieValue = Request.Cookies[i].Value; 
    cookie = new HttpCookie(cookieName); 
    cookie.Value = ""; 
    cookie.Domain = "dev.domain.com"; 
    cookie.Expires = DateTime.Now.AddDays(-1); 
    Response.Cookies.Add(cookie); 
+1

1 일, 1 개월, 1 년, 1 세기 - 모두 과거입니다. 여기 문제는 아닙니다. 문제는 동일한 이름과 다른 도메인을 가진 쿠키가 여러 개 있지만 같은 도메인에있는 것으로 나타나고 있다는 것입니다. –

+0

@BobJones 하위 도메인입니까? 다른 도메인의 쿠키가 보이지 않아야합니다. 부모 도메인에서 하위 도메인의 쿠키를 삭제하려고합니까? –

+0

도메인 계층 구조가 있습니다 (dev.domain, test.domain 및 domain). Request.Cookies를 dev 또는 test 또는 domain에서 읽을 때 해당 도메인의 쿠키 만보고 싶지만 대신 각 쿠키의 인스턴스가 여러 개 표시되지만 연결된 도메인 이름이 없으므로 어떤 쿠키인지 알 수 없습니다. 독서입니다. –

관련 문제