jquery - limpiar - Usar window.name como un caché de datos local en los navegadores web
limpiar cache navegador jquery (2)
Esto parece implementarse primero aquí: http://www.thomasfrank.se/sessionvars.html .
Sin embargo, si esta técnica despega, apostaría dinero a que los navegadores acabarían por tomar medidas enérgicas debido a su vulnerabilidad heredada a XSS.
Es probable que una solución a más largo plazo sea: http://en.wikipedia.org/wiki/DOM_storage, que surgió de la especificación HTML 5 (la mayor desventaja es la falta de compatibilidad con versiones anteriores para navegadores anteriores a IE 8).
Estaba leyendo acerca de las cookies y otras opciones de almacenamiento relacionadas con el cliente, y leí sobre usar window.name como una especie de caché de datos:
http://en.wikipedia.org/wiki/HTTP_cookie#window.name
Si bien ciertamente tiene cosas que lo hacen menos deseable, y no voy a endulzarlo, definitivamente es un truco en el verdadero sentido de la palabra, parece prometedor. Tengo una necesidad de almacenar aproximadamente 10K de JSON como un caché de cliente, ahora mismo lo estoy enviando con la página y cuando leo sobre esto parece que realmente podría satisfacer mis necesidades y reducir el tráfico.
Tengo curiosidad por ver si alguien ha implementado esto, y qué consejo podrías dar. Trampas? Recomendaciones? Diferencias entre los navegadores? Algún tipo de caso de uso que sería realmente malo?
Pros
- Almacenamiento local
- Disponible básicamente en todos los navegadores compatibles con JavaScript
Contras
- Solo admite cadenas
- Problemas con XSS
- envenenamiento de window.name
- Información que se filtra a otros sitios
Alternativas
- PersistJS - http://pablotron.org/?cid=1557
- dojox.storage - http://docs.dojocampus.org/dojox/storage