J'ai besoin d'aide pour trouver la meilleure façon, compatible avec tous les navigateurs, de "SAUVEGARDER" les données de l'utilisateur et de les stocker localement (modalité hors ligne) ET sur un serveur (en ligne). Le programme sera utilisé par Android et iOS.
Je souhaite connaître la meilleure façon de suivre les progrès de l'utilisateur lorsque l'appareil est en ligne OU hors ligne.
Bonjour J'ai fait des recherches sur AJAX, JSON, XMLHttpRequest, REST, Java, et HTML5 (en particulier, localStorage).
Le scénario : (Lire un livre en ligne/hors ligne, enregistrer la progression de la page)
-
Un utilisateur se connecte à un service web et le service web lui permet de télécharger un "livre de pages web html" (à visualiser avec un navigateur HTML5).
-
Après chaque page tournée, une API REST utilise une requête GET pour envoyer les données de progression à un serveur Web. Simultanément, une chaîne JSON est créée et enregistrée dans un fichier sur le serveur. (disons "ProgressData.txt").
-
En arrière-plan, une "copie" distincte de ProgressData.txt est enregistrée LOCALEMENT sur l'appareil mobile. L'utilisateur quitte alors la connexion internet et continue à lire le livre HTML.
-
Lorsque l'utilisateur retrouve la connectivité, le fichier ProgressData.txt est téléchargé sur le serveur à l'aide d'une API REST qui met à jour l'ancien fichier du serveur avec le NOUVEAU fichier .txt contenant toutes les données de progression de l'utilisateur.
Solutions possibles :
La solution HTML5 localStorage semble intéressante. jQuery la simplifie même : http://plugins.jquery.com/project/html5Storage
Straight Javascript semble être une bonne solution pour le stockage côté serveur, mais il n'a pas accès au disque dur physique d'un appareil mobile, ce qui empêche toute forme d'enregistrement hors ligne.
Les applets Java semblent possibles. De plus, je ne suis pas sûr que Java fonctionne avec Android/iOS.
Je ne veux pas avoir à lancer un localhost (PHP/Apache/Python) depuis un appareil mobile à chaque fois que l'utilisateur se déconnecte, mais c'est peut-être là que se trouve la solution. Je suis tombé sur cet outil puissant : http://couchdb.apache.org/
Pregunta:
J'ai besoin de savoir quelle est la meilleure façon de suivre les progrès de l'utilisateur lorsque l'appareil est en ligne ou hors ligne. Quelle est la meilleure façon de procéder ?