Esta página ha sido traducida del inglés por la comunidad.Aprende más y únete a la comunidad de MDN Web Docs.
EventSource
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since enero de 2020.
* Some parts of this feature may have varying levels of support.
La interfazEventSource se utiliza para recibir eventos server-side. Se realiza la conexión a un servidor sobre HTTP y se reciben eventos en formatotext/event-stream sin tener que cerrar la conexión.
In this article
Constructor
EventSource()Crea un nuevo
EventSourcea partiendo de un valorUSVString.
Propiedades
Esta interfaz también heredará propiedades de su antecesor,EventTarget.
EventSource.readyStateRead onlyUn número representando el estado de la conexión. Los valores posibles son CONECTANDO (
0), ABIERTO (1), o CERRADO (2).EventSource.urlRead onlyUn valor
DOMStringrepresentando la URL de la fuente.EventSource.withCredentialsRead onlyUn valor
Booleanindicando si el objectoEventSourceha sido instanciado con credeciales CORS disponibles (true) o no (false, valor por defecto).
Manejadores de Eventos
EventSource.onerrorEn un
event handlerque se invoca cuando ocurre un error y se envía el eventoerrora través del objetoEventSource.EventSource.onmessageEs un
event handlerque se invoca cuando se recibe un eventomessage, que indica que se ha enviado un mensaje desde la fuente.EventSource.onopenEs un
event handlerque 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 — verSimple SSE demo using PHP.
Especificaciones
| Specification |
|---|
| HTML> # the-eventsource-interface> |