Devo trovare un modo per aggiornare un'applicazione Web implementata con backbone
.Richiesta di polling per l'aggiornamento dei modelli Backbone/Viste
Il caso di utilizzo sarà il seguente:
ho diverse viste, e ogni vista, o forse il modello/collezione relative a questo punto di vista, ha bisogno di fare diversi richiesta di polling al server in tempi diversi per scoprire qualche cambiamento .
Mi chiedo che cosa è il modo più generale:
1) implementare il Traditional Polling Request
2) implementare il Long Polling Request
3) attuare la HTML5 web socket
PS:
1) Il server è scritto in PHP.
2) Per ora sto cercando una soluzione senza usare WebSocket HTML5 perché forse con PHP non è così semplice.
Ecco il mio codice semplice (1) utilizzando Traditional Polling Request
.
(1)
// MyModel
var MyModel = Backbone.View.extend({
urlRoot: 'backendUrl'
});
// MyView
var MyView = Backbone.View.extend({
initialize: function() {
this.model = new MyModel();
this.model.fetch();
this.model.on('change', this.render);
setTimeout(function() {
this.model.fetch();
}, 1000 * 60 * 2); // in order to update the view each two minutes
}
});
se si conosce asp.net è possibile controllare SignalR, rende molto semplice l'interazione client-server e sceglie automaticamente il modello di connessione appropriato in base alle funzionalità del browser – Alexander
websocket in php. vecchio codice e chiamato un rapido hack dell'autore ... potrebbe ancora valere la pena dare un'occhiata. http://code.google.com/p/phpwebsocket/source/browse/#svn%2Ftrunk%2F%20phpwebsocket –
websocket in php molto più promettente: http://code.google.com/p/phpws/source/ browse/# git% 2Fphpws –