Domanda

Vorrei qualche consiglio su come realizzare il seguente:

Vorrei fare i miei utenti a conoscenza dello stato di avanzamento di un compito che è in esecuzione sul mio server tramite la tecnologia AJAX. Il mio server esegue uno script PHP che scarica un file tramite comando di shell usando la funzione popen. E 'echos / Stampe ciò che sta accadendo periodicamente. Vorrei cogliere questa uscita utilizzando AJAX e presentarlo per l'utente.

Mi è stato detto in un'altra domanda che potrei avere bisogno di fare uso di polling o una cometa? Vorrei davvero apprezzare qualsiasi aiuto o indicazioni su come raggiungere questo obiettivo nel modo più semplice e più efficiente. Eventualmente, posso ancora fare uso di jQuery.

Grazie a tutti per aver il tempo di leggere questo.

P.S. Sono stato in grado di arrivare a questo punto con grazie alla comunità StackOverflow :.)

È stato utile?

Soluzione

Questo suona come una grande opportunità per Ajax polling lungo , che è una delle miriadi di tecniche utilizzate nelle implementazioni Comet generali. C'è un'altra domanda su Stack Overflow con codice di esempio.

Altri suggerimenti

Il collegamento Jim Puls postato è un ottimo punto di partenza. Un sacco di utenti in quanto le domande offrono un sacco di grandi informazioni su polling Comet e PHP. La maggior parte dei posti che ho visto hanno raccomandato di utilizzare python intrecciati per eseguire questa operazione.

Inoltre, ecco alcuni link a:

applicazioni AJAX con Responsive COMET

una barra di avanzamento in jQuery

E Un'altra HTTP Streaming Ajax modello Articolo

Credo che tornerei i gs percorso di cui alla fine a seconda di come "necessaria" la barra di avanzamento è. Se è solo una funzione per aiutare l'utente si rende conto che sta prendendo un po 'più tempo del solito per processo, poi "ingannando" loro con una stima è molto più facile che il polling dal vivo.

mi basta usare il polling regolare invece di cometa, in quanto questo è più simile a un hack. Per rendere l'interfaccia utente più fluida si potrebbe imbroglio e aggiornare il vostro barra di avanzamento senza controllare con il server, semplicemente calcolando il tempo medio che deve fare un compito. Si potrebbe correggere l'errore dal polling per lo stato corretto. Se si implementa molto bene, tutti penseranno che sia l'aggiornamento dal vivo.

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