with tutorial javascript database client-server data-storage data-synchronization

tutorial - biblioteca javascript para el almacenamiento del lado del cliente con sincronización del lado del servidor



sqlite-sync (9)

¿ jsonengine ?

No estoy seguro de cuánto está vivo este proyecto, pero esto responde a todos sus requisitos.

Estoy buscando una biblioteca de javascript que me permita almacenar datos en una base de datos del lado del cliente y en segundo plano sincronizar automáticamente la base de datos con la base de datos del servidor

algo preferible que soporta una variedad de motores de la misma manera que jStore para jQuery hace

Mirando alrededor puedo encontrar cualquier cosa


Desde que se hizo esta pregunta, se ha trabajado mucho en el almacenamiento local y en las bases de datos del lado del cliente.

Hay una gran visión general de las opciones de almacenamiento local en Dive Into HTML5 .

También hay varias bibliotecas de almacenamiento de JavaScript multiplataforma disponibles, incluyendo Lawnchair y persistence.js .


Firebase hace esto, aunque no es un modelo relacional.


He estado trabajando en esto. Parece que es casi posible utilizar documentos de Google. La mayoría de las API son accesibles a través de Javascript. Desafortunadamente, las excepciones incluyen la carga y la descarga, por lo que si bien es posible enumerar documentos, crear archivos, cambiar metadatos, etc., todo desde el interior del navegador, en realidad es mucho más difícil obtener los datos.

Las hojas de cálculo de Google tienen API de Javascript para acceder a celdas individuales, por lo que teóricamente es posible almacenar sus datos en una hoja de cálculo. Desafortunadamente, hay otro todo en la API en el que parece ser bastante difícil escribir datos en una celda que anteriormente no tenía datos, lo que significa que una vez que haya creado su hoja de cálculo vacía, no podrá llenarla ...


No conozco ninguna biblioteca que haga eso hoy en día. Aunque sea difícil, esta es una idea posible, debo decir que no estoy seguro de que hacer tal biblioteca sea un buen esfuerzo.

Tendría que proporcionar ejemplos de cómo exponer los datos de su servidor a la biblioteca, cómo calcular los deltas, etc. Esto obligaría al desarrollador a cambiar este código del lado del servidor según el protocolo de la biblioteca. Esto podría ser excelente para nuevas aplicaciones y sitios web, pero podría ser una molestia para cualquier sitio existente, con una estructura de datos particular, haciendo que el esfuerzo para implementar esto no sea tanto más preferible que desarrollar su propio Javascript para hacer eso con los datos actuales ya expuestos por la aplicación. Todo esto además de los posibles problemas de seguridad sería algo difícil de manejar en una biblioteca genérica de JavaScript.

En mi humilde opinión, esta es una gran idea para crear paquetes o complementos para marcos MVC específicos basados ​​en ORM, por ejemplo, Ruby on Rails o Django. Dado que el marco en sí mismo tiene una abstracción de la estructura de datos y muchas correcciones de seguridad ya agrupadas, hacer un paquete para hacerlo sería mucho más reutilizable y elegante.


No estoy 100% seguro, pero creo que no existe ese marco. Recomendaría echar un vistazo en Google Gears .

Google Gears admite almacenamiento sin conexión en el lado del cliente.

Otro enfoque sería revisar el código fuente de TidlyWiki . Han creado un sistema wiki que almacena todos los datos en el lado del cliente.


Que yo sepa, Safari, Chrome y Opera están basados ​​en SQLite. SQLite tiene un comando .dump que no solo es excelente para restaurar una base de datos sino también para sincronizar con otra base de datos. Por lo tanto, puede ser posible llamar esto desde la base de datos de Javascript usando .dump, y si es necesario, modificar el volcado y cargarlo en la base de datos del servidor para ejecutarlo.

Sin embargo, tendrá que tener cuidado con los intentos de inyección de SQL.



Store.js muy bien el almacenamiento del lado del cliente. Tenga en cuenta que soporta IE6 + junto con otros navegadores. Para el almacenamiento del lado del servidor, también puede crear su propio script, ya que no debería ser difícil.