2010-11-09 54 views

Respuesta

24

Cuando usa setcookie, puede establecer el tiempo de caducidad en 0 o simplemente omitir el parámetro: la cookie caducará al final de la sesión (es decir, cuando cierre el navegador).

+0

El caso es: - Tengo dos páginas que usa cookies diferentes. uno está configurado para caducar en 30 minutos y otro está configurado como Al final de la sesión. supongamos que ambas cookies están activas en este momento, pero estoy viendo una página para la que establecemos 30 minutos y no he ido a otra página por un tiempo. ¿Lo que esto significa? ¿Es algo así como un navegador de cierre para la página que no he visto? –

+2

Por favor, perdóneme, no entiendo la pregunta:/La página A tiene una cookie con tiempo de caducidad = 0, la página B tiene una cookie con tiempo de caducidad = 30 minutos. Esto significa que si cierra su navegador, la cookie A se eliminará, pero la cookie B permanecerá. Si no cierra el navegador en 30 minutos, la cookie B caducará, pero la cookie A permanecerá activa. Incluso si la cookie B expira mientras está viendo la página B, en la mayoría de los casos no sucederá nada, ya que la cookie probablemente se recreará tan pronto como vuelva a cargar la página o visite otra en el mismo sitio. Espero que al menos algo de esto responda a tu pregunta: | – mingos

4

Sólo para corregir la respuesta Mingos':

Si se establece el tiempo de caducidad a 0, la cookie no se creará en absoluto. He probado esto en Google Chrome al menos, y cuando se configuró en 0 ese fue el resultado. La cookie, creo, expira inmediatamente después de la creación.

Para configurar una cookie para que caduque al final de la sesión de exploración, simplemente Omita el parámetro de expiración por completo.

Ejemplo:

En lugar de:

document.cookie = "cookie_name=cookie_value; 0; path=/"; 

acaba de escribir:

document.cookie = "cookie_name=cookie_value; path=/"; 
21

cookies que 'expiran al final de la sesión' expirará impredecible desde la perspectiva del usuario!

¡En iOS con Safari caducan cada vez que cambia de aplicación!

En Android con Chrome ellos no caducan al cerrar el navegador.

En el escritorio de Windows con Chrome, caducan al cerrar el navegador. No es así cuando cierras la pestaña de tu sitio web; es cuando cierra todas las pestañas. Tampoco caducan si hay otras ventanas del navegador abiertas. Si los usuarios ejecutan aplicaciones web como Windows, es posible que ni siquiera sepan que son ventanas del navegador. Así que la vida de la cookie depende de lo que el usuario esté haciendo con una aplicación aparentemente no relacionada.

+0

Esa no es mi observación en iOS (10.2.1) – Myster

+0

@Myster gracias por la observación. Mis observaciones eran de una versión anterior. ¿Qué hace iOS 10.2.1? – James

+0

solo quiero agregar que no caduca en Chrome para Mac. aunque lo he establecido como "continuar donde lo dejaste". pero, ya cerré la pestaña del navegador para ese dominio, luego reinicié Chrome. la cookie de sesión que configuro todavía existe. –

Cuestiones relacionadas