Le mode hors connexion de l'app dans un (HTML5) navigateur possible?
Est-il possible de construire une application à l'intérieur de dans le navigateur? Une application signifie:
1 Où il est connexion (mode en ligne) entre le navigateur et un serveur d'application distant:
- l'application s'exécute dans le web-based mode
- l'application stocke nécessaire de données dans le stockage hors ligne, pour être utilisé en mode hors connexion (2)
- l'application de synchronisation/push de données (capturé pendant le mode hors ligne) vers le serveur quand il est repris à partir hors de mode en mode en ligne
2 Où il y a pas de connexion (mode hors ligne) entre le navigateur et un serveur d'application distant:
- l'application continue à fonctionner (javascript?)
- l'application présentera les données (qui sont stockées hors ligne) à l'utilisateur
- l'application peut autoriser la saisie de l'utilisateur (et magasin/ajout dans le stockage hors-ligne)
Est-ce possible? Si la réponse est oui, est-il (Ruby/Python/PHP) - cadre en cours de construction?
Grâce
- Une question: existe-t-il frameworks Javascript qui rendent tout cela est facile à mettre en œuvre?
Vous devez vous connecter pour publier un commentaire.
Oui, c'est possible.
Vous avez besoin pour écrire l'application en Javascript, et de détecter en quelque sorte, si le navigateur est en mode hors-ligne (la plus simple est d'interroger un serveur de temps en temps). (Edit: voir les commentaires pour une meilleure façon de détecter le mode hors connexion)
Assurez-vous que votre application se compose de seulement statique HTML, fichiers CSS et Js (ou de définir la stratégie de mise en cache manuellement dans votre script, de sorte que votre navigateur ne vous rappelez-vous en mode hors ligne). Les mises à jour de la page se fait par le biais de JS de manipulation du DOM, sans passer par le serveur (un cadre comme ExtJS http://www.extjs.com va vous aider ici)
Pour le stockage, l'utilisation d'un module comme PersistJS ( http://github.com/jeremydurham/persist-js ), qui utilise le stockage local du navigateur pour conserver une trace des données. Lorsque la connexion est rétablie, la synchronisation avec le serveur.
Vous devez vous pré-cache des images et d'autres actifs utilisés, otherwse ils ne seront pas disponibles en mode hors connexion si vous ne les utilisez pas avant.
De nouveau: l'essentiel de votre application doit être en javascript, PHP/Ruby/Python cadre vous aidera à petit si le serveur est inaccessible. Le serveur est probablement le plus simple possible, un RESTE-comme AJAX API pour stocker et charger les données.
La "Nous allons profiter de Cette mode Hors connexion" chapitre dans de Mark Pilgrim (en ligne) livre Plongez Dans HTML5 est un très bel aperçu de l'écriture hors-ligne des applications web avec HTML5 technologies.
Remarque: Depuis de Mark Pilgrim origine de Plongée En HTML5 lien semble être en panne.
Copies peuvent maintenant être trouvés ici parmi d'autres endroits.
Jake Archibald a écrit "Le livre de recettes hors ligne". Moderne (9 décembre 2014) et de nice approche avec ServiceWorker:
http://jakearchibald.com/2014/offline-cookbook/
Voici un hacks.mozilla.org article avec une démo: http://hacks.mozilla.org/2010/01/offline-web-applications/
Une autre démo.
Une documentation plus détaillée: https://developer.mozilla.org/en/HTML/HTML5#Web_application_features
La réponse en 2018 est d'exploiter le travailleur, et de construire une Progressive Web App:
https://developers.google.com/web/progressive-web-apps/
j'ai été à la recherche pour ce travail, j'ai découvert abt HTML5 en mode Hors connexion Web Apps. havent essayé tho
Javascript vous donner une option pour le site web en mode hors connexion et appelé UpUp Framework Javascript.
Un petit script qui assurez-vous que votre site est toujours là pour vos utilisateurs, même quand ils sont sur un plan ou 20 000 de la ligue sous la mer.
Maintenant le contenu de nos utilisateurs voient lorsqu'ils sont hors ligne, est le contenu de offline.html. C'est juste un simple fichier HTML, pas différent de toute autre page sur notre site.
Notre offline.html le fichier contient deux fichiers css: bootstrap.min.css et en mode hors connexion.css. Faisons en sorte que ces sont mises en cache et à la disposition de nos utilisateurs lorsqu'ils sont hors ligne
Ont un coup d'oeil à Google Gears, http://code.google.com/apis/gears/. Bien qu'ils aient été abandonné en faveur de HTML5. Cependant, il semble que ce qui est en train d'être poussé comme HTML5 est Google Gears.