Blog de Gonzalo

OBTENER ACTUALIZACIONES DEL SERVIDOR

Una forma de obtener actualizaciones del servidor, ya sea Apache, Tomcat, o cualquiera es usando EventSource (también conocidos como Server-Sent Events) son eventos en tiempo real transmitidos por el servidor y recibidos en el navegador. EventSource es se introdujo en HTML 5 y permite obtener una comunicación en tiempo real con el servidor, evitando tener que hacer llamadas ajax cada ierto tiempo ya que EventSource lo hace automáticamente. Pero hay que tener en cuenta que está comunicación es unidireccional del servidor al navegador.


//Código javascript
if(typeof(EventSource) !== "undefined") {
    //Server.php es donde está el código php que van a lanzar los eventos
    var source = new EventSource("server.php");
    source.onmessage = function(event) {
    //result es el id de un div donde se escribiran los eventos
document.getElementById("result").innerHTML += event.data + "
"; };
} else { document.getElementById("result").innerHTML = "Sorry, your browser does not support server-sent events...";
//Server.php header('Content-Type: text/event-stream'); header('Cache-Control: no-cache'); echo 'data: El número es:'. rand(5, 15). "\n\n"; flush(); }

El ejemplo que es puesto es bastante sencillo pero los EventSource se puede usar para dibujar gráficas en tiempo real, obtener cotizaciones de bolsa, valor de moneda o para las notificaciones de javascript.

Compartir en twitter