2011-08-16 23 views
19

He creado un prototipo funcional avanzado de una aplicación web simple, y las demoras lo han llevado a la posición de "en vivo".¿Dónde almacena Firefox javascript/HTML localStorage?

Por el momento, solo utiliza HTML5 localStorage instalación para realizar un seguimiento de lo que está sucediendo, pero debido a la paranoia, no queremos que se dañe y perder datos (sin duda se siente un poco complicado nunca hablar con un servidor ... .)

dónde viene mantener Firefox es localstorage base de datos (creo que es SQLite, pero yo no lo encuentro ...)

+0

este Q & A pueden ser útiles, aunque no específicamente sobre Firefox http://stackoverflow.com/questions/23587074/access-web-storage-or-indexeddb-from-outside-the-browser-in-android – Stuart

+0

Para una aplicación web en vivo, supongo que tiene usuarios finales, no programadores, que ingresan datos. Entonces, en lugar de hacer que encuentren y hagan una copia de seguridad de un archivo específico en su máquina, ¿por qué no agregar JavaScipt a la aplicación que sincroniza periódicamente sus contenidos de LocalStorage con el servidor? – maurice

Respuesta

20

los datos de almacenamiento DOM se almacena en el archivo webappsstore.sqlite en el perfil carpeta.

§ localStorage

5

En Windows, se puede encontrar aquí

 
%appdata%\Mozilla\Firefox\Profiles\xxxxxxx.default\webappsstore.sqlite 
7

En Mac OS X, el webappsstore.sqlite se encuentra bajo ~/Library/Application Support/Firefox/Profiles/xxxxxxxx.default/ (donde xxxxxxxx es aleatorio según Firefox Profile Tutorial).

Utilicé el Command Line Shell For SQLite para mirar alrededor. Suponiendo www.example.com fue un sitio real y el único sitio usando localStorage, puede ejecutar estos comandos:

$ sqlite3 webappsstore.sqlite 
sqlite> .tables 
webappsstore2 
sqlite> .schema 
CREATE TABLE webappsstore2 (scope TEXT, key TEXT, value TEXT, secure INTEGER, owner TEXT); 
CREATE UNIQUE INDEX scope_key_index ON webappsstore2(scope, key); 
sqlite> select * from webappsstore2; 
moc.elpmaxe.www.:http:80|stringkey|value|0| 
moc.elpmaxe.www.:http:80|jsonkey|{"key","value"}|0| 
sqlite> .exit 

Ver How is HTML5 WebStorage data physically stored? para la ubicación de almacenamiento de cromo. Chrome utiliza archivos sqlite individuales por nombre de host y protocolo, donde Firefox usa el nombre de host y el protocolo invertidos en la columna de alcance.

Consulte Where the sessionStorage and localStorage stored? para la ubicación de almacenamiento de Opera. Opera usa un archivo de índice XML y archivos XML individuales para los datos codificados en Base64.

Cuestiones relacionadas