Il caso d'uso è di avere un archivio di applicazioni sul lato client quando è offline. È consigliabile utilizzare il database SQL Web (supportato da Chrome e Safari, non FF) o attendere che i browser implementino l'API del database indicizzato?Si consiglia di utilizzare il Database SQL Web per l'archiviazione sul lato client
risposta
Se è necessario il supporto per Firefox, quindi ovviamente no.
Quindi, se il tuo obiettivo sono dispositivi Internet mobili (SmartPhone), allora starai bene con il web SQL poiché la maggior parte delle piattaforme sono WebKit o IE. – Marc
Sembra che WebSQL sia in uscita, da sostituire con il supporto IndexedDB. Firefox e Internet Explorer non hanno intenzione di supportare WebSQL, vogliono implementare IndexedDB per Firefox 4 e IE9. Chrome è impegnato a implementarlo, sono sicuro che Opera e Safari seguiranno l'esempio.
Attualmente tutti i browser HTML5 (e alcune versioni IE) supportano LocalStorage
che è un semplice database di chiavi/valori in grado di memorizzare solo le stringhe, quindi se avete bisogno di più capacità di archiviazione strutturate, dovrete attendere fino alla fine quest'anno (circa) per l'ampio supporto IndexedDB.
Sto cercando una memoria strutturata, potrebbe essere CouchDB è probabilmente la scelta per ora. – rnella01
CouchDB non verrà eseguito nel browser (AFAIK), si tratta di una tecnologia di database che viene eseguita sul server, quindi non funzionerà con l'archiviazione offline HTML5. –
"Sembra che WebSQL sia sulla sua uscita, per essere sostituito dal supporto IndexedDB" È davvero così? Ho visto alcune discussioni sull'argomento ... http://sites.google.com/a/chromium.org/dev/developers/design-documents/indexeddb https://lists.webkit.org/ pipermail/webkit-dev/2010-January/011409.html ... ma Google ha annunciato solo il supporto per Chrome Web SQL il 25 gennaio: http://blog.chromium.org/2010/01/more-resources- per-sviluppatori.html ... e Safari ha continuato a supportare Web SQL da Safari 3.1 e iPhone OS 2.0: http://bit.ly/c7z1Pe –
9 mesi dopo che questa domanda è stata posta e il database SQL Web è "... non più in manutenzione attiva e il gruppo di lavoro Applicazioni Web non intende mantenerlo ulteriormente": http://en.wikipedia.org/wiki/Web_SQL_Database.
Se si sta sviluppando una soluzione per il rilascio l'anno prossimo (in particolare per dispositivi mobili), IndexedDB è l'opzione migliore. Se hai bisogno di copertura ora (escluso Firefox), puoi utilizzare il Database SQL Web o serializzare oggetti JSON in LocalStorage.
Ho preso l'approccio "serializza oggetti JSON in LocalStorage" per ora. Sarà sicuramente rivisitare l'approccio IndexedDB una volta implementato da tutti i principali fornitori di browser. Per ora ho trovato questo utile: http://goo.gl/kwaAU – rnella01
Questo è un thread precedente ma volevo inserire i miei 2 centesimi. A partire da oggi stiamo sviluppando applicazioni Web iOS per Safari con l'API Web DB esistente. Non ho visto alcuna indicazione che Safari rilascerà questo problema nelle versioni future, tuttavia dal momento che queste app devono essere utilizzate oggi su iPad, stiamo assumendo un rischio calcolato e saremo pronti a passare a IndexedDB se/quando necessario.
sembra che IndexedDB sia ora supportato nell'ultima versione dei browser, è probabilmente tempo di sperimentarlo e condividere alcune esperienze ... – rnella01
@ mella01 indexeddb non è supportato sui browser mobili correnti. l'eccezione è BlackBerry 10 (di tutte le cose!). Rif: http://caniuse.com/#search=indexeddb – oligofren
Penso che in un caso d'uso come questo (mix di online e offline), si dovrebbe prendere in considerazione anche la sincronizzazione dei dati (tra il frutto del lavoro offline memorizzato localmente e la maggior parte del lavoro presumibilmente memorizzato nel server per il caso online mainstream). Apparentemente, nessuna delle due opzioni affronta questo.
Nel nostro caso abbiamo creato un framework javascript che si occupa della sincronizzazione quando l'utente accede al sistema quando è online. – rnella01
- 1. Come utilizzare le annotazioni JAXB sul lato client per GWT?
- 2. Usa il pacchetto npm sul lato client
- 3. Quando utilizzare lato client o lato server?
- 4. SQL Server per il test sul web
- 5. Come utilizzare le regole di convalida sia sul lato client che sul lato server?
- 6. Consiglia il framework Web per Clojure
- 7. Come abilitare il database SQL lato client HTML nell'app webkit incorporata (app di test su github)
- 8. Errore di registrazione per javascript sul lato client
- 9. Come si sincronizzano il codice lato server e lato client?
- 10. Reagire sul lato server e sul lato client non trasparente
- 11. Dove è memorizzato il token di autenticazione sul lato client?
- 12. RegisterOnSubmitStatement dopo la convalida sul lato client
- 13. React-Redux token sul lato client
- 14. Acessing MongoDB sul lato client utilizzando JavaScript
- 15. Supporto per Firefox 3.5 per database lato client?
- 16. Un client IMAP basato sul Web ha un proprio database?
- 17. Lato server o lato client per il recupero dei tweet?
- 18. Come convalidare il modulo Symfony 2 sul lato client (javascript)
- 19. Si consiglia di utilizzare hashcode per determinare l'uguaglianza in Java?
- 20. Disabilita X-Frame-Option sul lato client
- 21. Quindi è sicuro convalidare il modulo solo sul lato client?
- 22. ParseQueryAdapter: ordina i dati sul lato client
- 23. Come si consiglia di utilizzare il metodo di eliminazione di contentResolver come sicuro per l'iniezione?
- 24. Node.js: Templating sul lato client Modellazione lato server v/s
- 25. Qual è il vantaggio dell'architettura web lato client di Gmail?
- 26. Come si impedisce l'abuso del client secret nel programma Java solo sul lato client?
- 27. Dove posso sapere come utilizzare html5 per le app del database lato client?
- 28. Dove si trova il file .js lato client Socket.IO?
- 29. Logica lato client O logica lato server?
- 30. Come si evita la duplicazione della convalida sul server e sul lato client?
So che è un po 'tardi, ma per progetti futuri, prova: SequelSphere (www.sequelsphere.com). È un motore di database relazionale HTML5 che supporta SQL e memorizza i dati in Persistenza locale. Non utilizza i database WebSQL, ma piuttosto è il proprio motore SQL. In quanto tale, funzionerà in qualsiasi browser compatibile con JavaScript. Mentre attualmente supporta solo l'archiviazione locale, SequelSphere supporterà eventualmente altri motori di persistenza locali come IndexedDB e File API. Per una completa divulgazione: sono collegato alla società SequelSphere. :) –