javascript - Chrome nu șterge cookie-urile de sesiune


Încerc să setez un cookie de sesiune în JavaScript astfel:

document.cookie = 'name=alex; path=/'

Dar Chrome nu îl șterge chiar dacă închid browserul și îl deschid din nou.

Am verificat în Firefox și Opera și ambele funcționează conform intenției - ele șterg cookie-ul de sesiune la închiderea browserului.

Chrome pur și simplu ignoră regulile de expirare?

Am verificat în mai multe sisteme de operare și am aflat că cookie-ul de sesiune este eliminat în Chrome pe Windows XP și Ubuntu, dar NU în Mac OSX Lion.

Răspuns #1

Acest lucru poate fi cauzat de faptul că Chrome este setat pe Continuă de unde ai rămas.

Lecturi suplimentare

  • Raport de bug: Chrome nu șterge cookie-urile temporare - adică nu mă deloghează automat când închid toate ferestrele browser-ului
  • Problema 128513 în Chromium: Cookie-urile de sesiune nu sunt șterse când procesele Chrome sunt închise
  • Problema 128567: Cookie-urile doar pentru sesiune nu se șterg

Răspunsul #2

Tocmai am avut aceeași problemă cu un cookie care era setat să expire la „sfârșitul sesiunii de navigare”.

Din păcate nu a funcționat, așa că m-am jucat puțin cu setările browserului.

S-a dovedit că funcția care își amintește de filele deschise atunci când browserul este închis era rădăcina problemei. (Funcția se numește „La pornire” - „Continuă de unde am rămas”. Cel puțin în versiunea actuală de Chrome).

Acest lucru se întâmplă și cu Opera și Firefox.

Răspunsul #3

Tocmai am avut această problemă. Am observat că, chiar și după ce am închis browserul, aveam multe procese Chrome care rulează. Se pare că acestea proveneau fiecare de la extensia mea Chrome.

În setările avansate, am debifat 'Continuă să rulezi aplicațiile în fundal când Google Chrome este închis' și cookie-urile mele de sesiune au început să funcționeze așa cum trebuie.

Încă o bătaie de cap pentru noi toți dezvoltatorii care am programat așteptând ca cookie-urile de sesiune să fie șterse când utilizatorul își termină navigarea.

Răspunsul #4

A trebuit să debifez ambele, în setările avansate ale Chrome:

  • Continuă să rulezi aplicațiile din fundal atunci când Google Chrome este închis
  • "Continuă de unde am rămas", "La pornire"

Răspunsul #5

Acest lucru se poate datora faptului că Chrome rulează încă în fundal după ce închideți browserul. Încercați să dezactivați această funcție urmând pașii următori:

  1. Deschide chrome://settings/
  2. Clic pe „Afișează setările avansate ...”
  3. Navigați în secțiunea Sistem și dezactivați „Continuă să rulezi aplicațiile în fundal când Google Chrome este închis”. Acest lucru va forța Chrome să se închidă complet și apoi va șterge cookie-urile de sesiune.

Totuși, cred că Chrome ar trebui să verifice și să șteargă cookie-urile de la sesiunea anterioară la pornire, în loc să o facă la închidere.