Utilisez Delphi + Intraweb pour créer avec le stockage du navigateur HTML5 hors application (cache manifeste) (websql / IndexedDB) possible?

StackOverflow https://stackoverflow.com/questions/8830097

Question

Mon application actuelle de Intraweb est en fait un DataSnap client qui se connectent à mon serveur DataSnap qui se connecte et se trouve en même temps qu'un Interbase serveur sur la même machine. Il fonctionne correctement, mais assez lent et nécessite connetion Internet constante au travail. Chaque bouton cliqué ou tout autre événement déclenché, il faudra le navigateur pour se connecter au serveur Web (Intraweb).

Je pense à la création d'une application web hors ligne en utilisant Intraweb dans Delphi XE2, HTML5 cache caractéristique manifeste, et utiliser le stockage basé sur un navigateur SQL (comme websql ou IndexedDB) que le stockage local du navigateur lorsque l'appareil mobile est déconnecté. Il ne se connecter au serveur réel DataSnap lorsque la connexion Internet est disponible pour faire revenir l'initialisation ou la synchronisation du serveur DataSnap.

Est-il possible?

Mon problème principal est d'obtenir l'URL des pages Web à partir de l'application Web de intraweb, et je ne veux pas mettre tout le code de stockage du navigateur dans les fichiers de modèle.

Il est également assez fastidieux de déplacer le code JavaScript généré par Intraweb à d'autres fichiers js, et en faisant cela, je peut briser les codes d'application Intraweb et logique. Y at-il solution de contournement à ce sujet?

Était-ce utile?

La solution

Comme vous l'avez dit vous-même: « Chaque bouton cliqué ou tout autre événement déclenché, il faudra le navigateur pour se connecter au serveur Web »

.

Ceci est la conception de IntraWeb: une application client-serveur, dans lequel est exécuté sur le côté serveur le plus logique du code. Vous pouvez ajouter des widgets AJAX à vos applications, mais IntraWeb, par lui-même, est un cadre côté serveur.

Afin d'avoir une pleine application HTML5 AJAX client capable d'exécuter autonome, vous aurez besoin d'une application pure JavaScript. Même Sacha / ExtJS sur la base de cadres AJAX (comme ExtPascal ou UniGUI ) ou Morfik ont ??besoin d'un serveur pour exécuter.

Mais la création d'une application pure JavaScript HTML5 est une tâche difficile - mais il est possible, puisque vous pouvez consommer DataSnap contenu à partir de JavaScript (en utilisant XML ou JSON). Vous pouvez essayer http://www.appcelerator.com/ qui est un IDE et la plate-forme pour créer des applications JavaScript , qui courent comme des applications natives.

Afin d'avoir une application HTML5 déconnectée, vous pouvez avoir à attendre les produits suivants devant être libérés:

Merci à ces deux projets, vous seriez en mesure de code dans pascals objet, le JavaScript sera compilé à partir de la source pascals, puis utilisez le stockage local HTML. Voir, par exemple, cet article sur l'utilisation du stockage avec Smart / OP4JS - Je l'ai testé (Alpha), et il fonctionne très bien: vous avez un fichier HTML pur autonome qui est capable de fonctionner sans serveur et un stockage local. le stockage SQLite3 est prévu (pas encore terminé).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top