Utilizzare Delphi + Intraweb per creare un'applicazione offline HTML5 (manifesto della cache) con l'archiviazione del browser (webSQL / IndexedDB) possibile?

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

Domanda

La mia attuale applicazione Intraweb è in realtà un DataSnap Client che si collega al mio DataSnap Server che si connette e risiede insieme a un Interbase Server sulla stessa macchina. Funziona correttamente ma è piuttosto lento e richiede una connessione Internet costante per funzionare. Ogni pulsante cliccato o qualsiasi evento attivato richiederà la connessione del browser al server Web (Intraweb).

Sto pensando di creare un'applicazione Web offline utilizzando Intraweb in Delphi XE2, funzionalità di manifest della cache HTML5 e utilizzare l'archiviazione SQL basata su browser (come webSQL o IndexedDB) come archiviazione del browser locale quando il dispositivo mobile va offline. Si collegherà al server DataSnap reale solo quando è disponibile una connessione Internet per eseguire l'inizializzazione o la sincronizzazione con il server DataSnap.

È possibile?

Il mio problema principale è ottenere l'URL delle pagine web dall'applicazione web intraweb e non voglio mettere tutto il codice di archiviazione del browser all'interno dei file modello.

È anche piuttosto noioso spostare il codice JavaScript generato da Intraweb su altri file js, e così facendo potrei rompere i codici e la logica dell'applicazione Intraweb. C'è qualche soluzione alternativa a questo?

È stato utile?

Soluzione

Come hai affermato tu stesso: "Ogni pulsante cliccato o qualsiasi evento attivato richiederà la connessione del browser al server web".

Questo è il progetto di IntraWeb: un'applicazione client-server, in cui la maggior parte della logica del codice viene eseguita sul lato server. Puoi aggiungere alcuni widget AJAX alle tue applicazioni, ma IntraWeb, di per sé, è un framework lato server.

Per avere un'applicazione client AJAX HTML5 completa in grado di funzionare autonomamente, avrai bisogno di un'applicazione JavaScript pura. Anche i framework AJAX basati su Sacha / ExtJS (come ExtPascal o UniGUI ) o Morfik richiedono un server per funzionare.

Ma la creazione di un'applicazione JavaScript HTML5 pura è un compito difficile, ma è possibile, poiché puoi utilizzare il contenuto DataSnap da JavaScript (utilizzando XML o JSON). Puoi provare http://www.appcelerator.com/ che è un ottimo IDE e piattaforma per la creazione di applicazioni JavaScript , che vengono eseguite come app native.

Per avere un'applicazione HTML5 scollegata, potrebbe essere necessario attendere il rilascio dei seguenti prodotti:

Grazie a questi due progetti, saresti in grado di codificare nell'oggetto pascal, quindi il JavaScript verrà compilato dal sorgente pascal, quindi utilizzare l'archiviazione locale HTML. Vedi ad esempio questo articolo sull'utilizzo dell'archiviazione con Smart / OP4JS - L'ho testato (in Alpha) e funziona molto bene: hai un puro file HTML stand-alone che è in grado di funzionare senza alcun server e ha una memoria locale. L'archiviazione di SQLite3 è pianificata (non ancora terminata).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top