2011-03-31 7 views
1

5 월 1 일 이전에 생성 된 특정 쿠키를 무효화하는 기능 (5 월 1 일에 완료 예정)을 투자하도록 요청 받았기 때문에 해시가 자동으로 업데이트됩니다 변화하고 있습니다. 지금 우리 쿠키는 30 일간 지속됩니다. 쿠키는 클라이언트 컴퓨터에 있기 때문에 다음과 같은 이유로 여러 가지 방법으로 깨끗하게 처리 할 수 ​​없습니다.모든 사용자의 쿠키 무효화

  1. 내가 아는 바로는 생성을 검색 할 방법이 없다고 생각합니다. 또는 자바 스크립트의 쿠키 만료 데이터
  2. 쿠키가 마음에 온이 하나 개의 아이디어를 작성하는 것처럼 삼십일

을 위해 존재해야 할 필요가 일어날 필요가 무엇이든 30 일에 설정되어 있기 때문에. 유일한 것은 내가 생각할 수 있으며, 이러한 해킹이 스위치는 내가 같은 코드의 조각에서 추가 발생하는 데 필요한 때마다에서 기본적으로 : 그래서이 경우 해시 쿠키를 삭제해야

var newHash = readCookie('new_hash'); 
if(newHash != 1) 
{ 
    eraseCookie('hash'); 
    create_cookie('new_hash', 1, 60);//set this flag for 60 days 
} 

사용자는 새 해시로 업데이트되지 않으며 매 60 일마다 해시해야합니다. 30 일이 지난 후에 모든 사용자가 쿠키를 새 해시로 새로 고침 했으므로이 코드를 제거 할 수 있습니다.

더 쉬운 방법이 있나요?

답변

2

다른 이름으로 쿠키를 만들고 대신 그 쿠키를 사용 할 수 있습니까? 코드가 더 이상 이전 코드를 읽지 않는다면 기본적으로 존재하지 않습니다.

+0

내 백엔드 PHP 코드와 프론트 엔드 자바 스크립트 코드 모두에서 꽤 많은 부분 코드를 변경해야합니다. 또한 동일한 백엔드 코드베이스를 사용하는 동일한 쿠키 이름을 사용하는 여러 사이트가 있으므로 다른 사이트도 변경해야합니다. – ryanzec

+0

그건 짜증나. 아마도 이것을 변수로 다시 작성하려는 노력이 미래에 번거 로움을 덜어 줄 것입니까? (더 좋은 해결책이 없다면!) –

0

expiry 매개 변수뿐만 아니라 새 쿠키 값의 일부로 만료 데이터를 추가 할 수 있습니다. 쿠키가 없으면 이전 쿠키가됩니다.

0

들어오는 쿠키를 읽으려고 시도 할 수 있으며 새 해싱 알고리즘에 맞지 않으면 무효화하고 리디렉션 할 수 있습니까?