쿠키

2013-09-06 6 views
0

클라이언트 = IE9는, 서버 = asp.net (A 셰어 응용 프로그램 페이지가 정확하기) 페이지의 Page_Load 방법에서쿠키

, 나는 다음과 같은 코드가 있습니다

Response.Cookies["XXXXX"].Value = tabtitles.IndexOf(Request.Params["tab"]).ToString(); 
Response.Cookies["XXXXX"].Expires = DateTime.Now.AddDays(1); 
을 당신이 할 수

>> document.cookie 
    "XXXXX=3; WSS_KeepSessionAuthenticated={7da6dcd3-28b6-4c8f-b507-6fa80a16143c}; databaseBtnText=Open%20with%20Access; databaseBtnDesc=Works%20with%20items%20in%20a%20Microsoft%20Access%20database%2E; XXXXX=7" 

:

내 쿠키 논리는 그래서 document.cookie는 다음 값을 남겼습니다 IE 개발자 도구의 콘솔을 사용하여, 예상대로 행동하지 않은 쿠키가 대체되지 않고 document.cookie 끝에 추가되었습니다. 이것은 IE9의 버그입니까? 원하는 쿠키를 올바르게 설정하고 가져올 수 있습니까?

+0

대소 문자를 구분합니다. 실제 ID를 제공 할 수 있는지 XXXXX를 사용하고 있는지 의심 스럽습니까? 또는 그냥 확인하십시오. – abc123

+1

아니요, 여기 IE에 버그가 없습니다. 만약 그렇다면, 그것은 웹을 망칠 것입니다. 이 문제의 일반적인 원인은 example.com에서 쿠키를 설정하고 www.example.com에서 다시 설정하는 경우입니다. 방문 www.example.com 두 버전을 보냅니다. – EricLaw

+0

예, "XXXXX"가 두 인스턴스에서 모두 똑같은지 확인했습니다. – Nacht

답변

1

문제는 이전에 jquery 플러그인으로 쿠키를 설정했기 때문에 현재 경로를 쿠키의 경로로 설정했기 때문입니다. 위의 .Net 코드는 추가 된 쿠키의 경로를 "/"으로 설정하므로 document.cookies 변수를 볼 때 보이지 않는 두 개의 다른 쿠키가 있습니다. 내 해결책은 jquery 쿠키의 경로를 "/"으로 설정하는 것이 었습니다.