programing

jQuery를 사용하여 쿠키를 삭제하는 방법?

powerit 2023. 9. 10. 13:08
반응형

jQuery를 사용하여 쿠키를 삭제하는 방법?

jQuery를 사용하여 쿠키를 삭제하고 싶습니다. 시도해 본 적이 있습니다.

$.cookie('name', '', { expires: -1 });

그러나 페이지를 새로 고치면 쿠키가 그대로 있습니다.

alert('name:' +$.cookie('name'));

왜요?

JQuery로 쿠키를 삭제하려면 값을 null로 설정합니다.

$.cookie("name", null, { path: '/' });

편집: 최종 해결책은 다음을 명시적으로 지정하는 이었습니다.pathOP가 서로 다른 디렉토리의 여러 페이지에서 쿠키에 액세스하므로 기본 경로가 다르기 때문에 쿠키에 액세스할 때마다 속성을 지정합니다(이는 원래 질문에서 설명되지 않았습니다).해결책은 아래의 논의에서 발견되었으며, 이는 이 답변이 정확하지 않음에도 불구하고 받아들여진 이유를 설명해 줍니다.

일부 버전의 jQ cookie의 경우 위 솔루션에서 cookie를 문자열 null로 설정합니다.따라서 쿠키를 제거하지 않습니다.대신 아래 제시된 코드를 사용하세요.

$.removeCookie('the_cookie', { path: '/' });

다음을 시도해 볼 수 있습니다.

$.removeCookie('the_cookie', { path: '/' });

출처 : https://github.com/carhartl/jquery-cookie#readme

jquery.cookie 플러그인을 사용하지 않고 쿠키를 삭제할 수도 있습니다.

document.cookie = 'NAMEOFYOURCOOKIE' + '=; expires=Thu, 01-Jan-70 00:00:01 GMT;';

쿠키에 대한 오해의 문제입니다.브라우저는 키뿐만 아니라 옵션 경로와 도메인도 비교하여 쿠키 값을 인식합니다.따라서 브라우저는 서버 설정 옵션(path='/'; domain='mydomain.com ')이 있는 키가 '이름'이고 옵션이 없는 키가 '이름'인 쿠키 값을 다르게 인식합니다.

이거 먹어봐요.

 $.cookie('_cookieName', null, { path: '/' });

{path: '/'}이(가) 작업을 대신 수행합니다.

를 위해 일했을 때만path설정되었습니다. 즉:

$.cookie('name', null, {path:'/'})

사용 중인 작업이 맞습니다. 문제는 다른 곳에 있습니다. 예를 들어 쿠키가 새로 고쳐질 때 다시 설정됩니다.

언급URL : https://stackoverflow.com/questions/3671659/how-to-delete-a-cookie-using-jquery

반응형