2010-01-09 9 views
14

que estaba leyendo acerca de las cookies y otras opciones de almacenamiento del lado del cliente relacionado, y leí sobre el uso de window.name como una caché de datos del tipo:window.name como una caché de datos locales en los navegadores web

http://en.wikipedia.org/wiki/HTTP_cookie#window.name

A pesar de que ciertamente tiene cosas que lo hacen menos deseable, y no voy a usar una capa de azúcar, 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é consejos podría dar. Trampas? Recomendaciones? Diferencias entre los navegadores? Algún tipo de caso de uso que sería realmente malo?

Pros

  • almacenamiento local
  • Disponible en básicamente cualquier navegador que soporte Javascript

Contras

  • sólo admite cadenas
  • Problemas XSS
  • envenenamiento window.name
  • filtración de información a otros sitios

Alternativas

+0

es eso 10kb de JSON comprimido? –

+0

10K sin comprimir y bastante detallado. – Goyuix

Respuesta

5

Hay muchas maneras de almacenar datos locales, Flash LSO, almacenamiento local HTML 5, cookies. Engranajes de Google. Eche un vistazo a PersistJS, una biblioteca cliente js que simplemente lo hará.

Esta publicación en Ajaxian elabora un poco más al respecto.

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 eventualmente tomarían medidas enérgicas debido a su vulnerabilidad heredada a XSS.

Una solución a más largo plazo es probable que sea: http://en.wikipedia.org/wiki/DOM_storage que surgió a partir de la especificación HTML 5 (el mayor inconveniente es la falta de compatibilidad con versiones anteriores para navegadores anteriores a IE 8).

+2

De acuerdo, como algo que no está explícitamente documentado/estandarizado, es mejor no confiar en ... pero podría ser una alternativa útil para los navegadores que no admiten mejores alternativas. – bobince

Cuestiones relacionadas