2011-08-16 13 views
19

Ho realizzato un prototipo funzionale avanzato di una semplice applicazione Web e ritardi hanno spinto questo nella posizione di "live".Dove memorizza JavaScript javascript/HTML localStorage?

Al momento, utilizza solo la funzione localStorage di HTML5 per tenere traccia di ciò che sta accadendo, ma a causa della paranoia, non vogliamo che si corrompa e perdi dati (è certamente un po 'approssimativo non parlare mai con un server .. .)

dove viene Firefox tenerlo è localstorage database (penso che sia SQLite, ma io proprio non riesco a trovarlo ...)

+0

questo Q & A possono essere utili, anche se non su Firefox specificamente http://stackoverflow.com/questions/23587074/access-web-storage-or-indexeddb-from-outside-the-browser-in-android – Stuart

+0

Per un'applicazione web live, suppongo che tu abbia utenti finali, non programmatori, inserendo dati. Quindi, piuttosto che trovare e salvare un file specifico sul proprio computer, perché non aggiungere JavaScipt all'app che periodicamente sincronizza i loro contenuti localStorage sul server? – maurice

risposta

20

I dati di archiviazione DOM è memorizzato nel file webappsstore.sqlite nel profilo Cartella .

§ localStorage

5

Su Windows, si può trovare qui

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

In Mac OS X, il webappsstore.sqlite si trova sotto ~/Library/Application Support/Firefox/Profiles/xxxxxxxx.default/ (dove xxxxxxxx è casuale secondo Firefox Profile Tutorial).

Ho usato il Command Line Shell For SQLite per dare un'occhiata. Supponendo www.example.com era un luogo reale e l'unico sito utilizzando localStorage, è possibile eseguire questi comandi:

$ 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 

Vedere How is HTML5 WebStorage data physically stored? per la posizione di memorizzazione Chrome. Chrome utilizza singoli file sqlite per nome host e protocollo, in cui Firefox utilizza il nome host e il protocollo inverso nella colonna scope.

Vedere Where the sessionStorage and localStorage stored? per la posizione di archiviazione Opera. Opera utilizza un file indice XML e singoli file XML per i dati codificati Base64.

Problemi correlati