2011-12-16 173 views
53

¿Cuánto tiempo puedo esperar que se guarden los datos en localStorage? ¿Cuánto tiempo persistirán los datos locales de almacenamiento de un usuario? Si el usuario no lo borra, ¿durará hasta que se vuelva a instalar el navegador?¿Cuándo se borra localStorage?

¿Es esto coherente en todos los navegadores?

Respuesta

50

proyecto W3C dice que esto

Los agentes de usuario deben expirar datos de las áreas de almacenamiento local sólo por razones de seguridad o cuando así lo solicite el usuario. Los agentes de usuario siempre deben evitar borrar datos mientras se ejecuta una secuencia de comandos que podría acceder a esos datos.

Así que si los navegadores siguen las especificaciones, debería permanecer hasta que el usuario lo elimine en todos los navegadores, no he encontrado ninguno que haya sido eliminado en ninguno de mis proyectos.

Un buen artículo para leer es también http://ejohn.org/blog/dom-storage/

+0

"así lo solicite por el usuario" = cuando el usuario borra los datos. Consulte http://www.stevesouders.com/blog/2012/09/10/clearing-browser-data/ para la limpieza específica del navegador y cómo hacerlo. –

2

El contenido en localStorage es persistente, siempre y cuando el usuario decide borrar el almacenamiento (en su totalidad o un único valor en su interior)

Sobre la consistencia a través del navegador , localstorage está actualmente disponible en todos los navegadores principales, incluyendo IE8 + (ver http://caniuse.com/#feat=namevalue-storage)

1

En Chrome mientras se realizan 'datos de navegación claros', si elige la opción 'Cookies y otros datos de sitios y complementos', los datos de sessionStorage se borrarán.

41

localStorage también se conoce como almacenamiento web, almacenamiento HTML5 y almacenamiento DOM (todos estos significan lo mismo).

localStorage es similar a sessionStorage, excepto que datos almacenados en el almacenamiento local no tiene fecha de caducidad, mientras que los datos almacenados en sessionStorage se limpia al terminar la sesión de navegación (es decir, cuando se cierra el navegador).

localStorage está disponible en todos los navegadores, pero la persistencia no se implementa de forma coherente. En particular, localStorage se puede borrar por acción del usuario y se puede borrar inadvertidamente (¿quién pensaría que borrar todas las cookies también borra localStorage?).

En Firefox, localStorage se borrará cuando se cumplen estas tres condiciones: (a) usuario borra la historia reciente, (b) las cookies son seleccionados para ser limpiado, (c) el intervalo de tiempo es "Todo"

En Chrome , localStorage se borra cuando se cumplen estas condiciones: (a) borrar los datos de navegación, (b) "cookies y otros datos del sitio", (c) el cronograma es "desde el principio de los tiempos". En Chrome, ahora también es posible delete localStorage for one specific site.

En IE, para borrar localStorage: (a) Herramientas - Opciones de Internet, (b) pestaña General, (c) eliminar historial de navegación al salir, (d) asegurar "Cookies y datos de sitio web" (o "internet temporal" archivos y archivos de sitios web ") está seleccionado, (e) considere desmarcar" Conservar datos de sitios web favoritos "en la parte superior

En Safari: (a) Haga clic en Safari (b) Preferencias (c) Seleccione la pestaña Privacidad (d) Haga clic Eliminar todos los datos del sitio web (e) Haga clic en Eliminar ahora

Opera: a pesar de los excelentes artículos sobre localStorage del sitio Opera, aún no he encontrado instrucciones claras (no programáticas) para los usuarios sobre cómo borrar localStorage.Si alguien lo encuentra, por favor deje un comentario debajo de esta respuesta con un enlace de referencia.


El Opera dev site tiene un excelente resumen de localStorage:

La forma actual de almacenamiento de datos en el lado del cliente - Galletas - es un problema :

  • tamaño de baja : Las cookies generalmente tienen un tamaño máximo de alrededor de 4 KB, que no es muy bueno para almacenar cualquier tipo de datos complejos

  • Es difícil para las cookies para realizar un seguimiento de dos o más transacciones en el mismo sitio, lo que podría estar sucediendo en dos o más diferentes pestañas

  • Galletas puede ser explotada mediante técnicas como este tipo de ataque, dando como resultado fallos de seguridad

Otros (menos populares) alternativas a cookies, que incluyen técnicas que implican cadenas de consulta, de forma oculta campos, objetos locales compartidos basados ​​en flash, etc. E ach con su propio conjunto de problemas relacionados con la seguridad, facilidad de uso, restricciones de tamaño, etc. Hasta ahora hemos estado usando formas bastante malas de almacenar datos en al final del usuario. Necesitamos una mejor manera, que es donde entra en almacenamiento Web .

de almacenamiento Web

especificación El almacenamiento Web W3C fue diseñado como una mejor forma de almacenamiento de datos en el lado del cliente. Tiene dos tipos diferentes de almacenamiento : almacenamiento de sesión y almacenamiento local.

Tanto la sesión como el almacenamiento local normalmente podrán almacenar alrededor de 5 MB de datos por dominio, lo que es mucho más que las cookies.

Recursos:

https://dev.opera.com/articles/web-storage/

http://www.quirksmode.org/html5/storage.html

http://www.ghacks.net/2015/02/05/how-to-clear-web-storage-in-your-browser-of-choice/

https://nakedsecurity.sophos.com/2014/11/05/how-to-clear-out-cookies-flash-cookies-and-local-storage/

http://www.opera.com/dragonfly/documentation/storage/

DOMStorage article on MDN (written by John Resig)

http://ejohn.org/blog/dom-storage/

+0

Agregaría, en realidad puedes ver, modificar y eliminar estas variables locales de almacenamiento en "Modo de desarrollo" (presionando F12), en la pestaña Almacenamiento. – Davdriver

+0

¿Es el mismo caso con indexDB? Es decir.también se puede borrar por acción del usuario? – Pylinux

Cuestiones relacionadas