Esta traducción está incompleta. Por favor, ayuda a traducir este artículo del inglés.
La interfaz EventSource se utiliza para recibir eventos server-side. Se realiza la conexión a un servidor sobre HTTP y se reciben eventos en formato text/event-stream sin tener que cerrar la conexión.
Constructor
EventSource()- Crea un nuevo
EventSourcea partiendo de un valorUSVString.
Propiedades
Esta interfaz también heredará propiedades de su antecesor, EventTarget.
EventSource.readyStateRead only- Un número representando el estado de la conexión. Los valores posibles son CONECTANDO (
0), ABIERTO (1), o CERRADO (2). EventSource.urlRead only- Un valor
DOMStringrepresentando la URL de la fuente. EventSource.withCredentialsRead only- Un valor
Booleanindicando si el objectoEventSourceha sido instanciado con credeciales CORS disponibles (true) o no (false, valor por defecto).
Manejadores de Eventos
EventSource.onerror- En un
EventHandlerque se invoca cuando ocurre un error y se envía el eventoerrora través del objetoEventSource. EventSource.onmessage- Es un
EventHandlerque se invoca cuando se recibe un eventomessage, que indica que se ha enviado un mensaje desde la fuente. EventSource.onopen- Es un
EventHandlerque se invoca cuando se recibe un eventoopen, que sucede en el momento que la conexión se abre.
Métodos
Esta interfaz también heredará métodos de su antecesor, EventTarget.
EventSource.close()- Cierra la conexión, si ésta existe, y asigna el valor CLOSED al atributo
readyState. Si la conexión ya estaba cerrada, este método no hace nada.
Ejemplos
var evtSource = new EventSource('sse.php');
var eventList = document.querySelector('ul');
evtSource.onmessage = function(e) {
var newElement = document.createElement("li");
newElement.textContent = "message: " + e.data;
eventList.appendChild(newElement);
}
Nota: Está disponible un ejemplo completo en GitHub — ver Simple SSE demo using PHP.
Especificaciones
| Especificación | Estado | Comentario |
|---|---|---|
| HTML Living Standard La definición de 'EventSource' en esta especificación. |
Living Standard |
Compatibilidad de navegadoresEdit
| Característica | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|---|
| Soporte EventSource | 6 | Sin soporte | 6.0 (6.0) | Sin soporte | (Yes) | 5 |
| Disponible en workers compartidos y dedicados[1] | (Yes) | Sin soporte | 53.0 (53.0) | Sin soporte | (Yes) | (Yes) |
| Características | Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|
| Soporte EventSource | 4.4 | 45 | Sin soporte | 12 | 4.1 |
| Disponible en workers compartidos y dedicados[1] | (Yes) | 53.0 (53.0) | Sin soporte | (Yes) | (Yes) |
[1] Pero todavía no disponible en service workers.