The EventSource interface is used to receive server-sent events. It connects to a server over HTTP and receives events in text/event-stream format without closing the connection.
EventSource()EventSource from the given USVString.This interface also inherits properties from its parent, EventTarget.
EventSource.readyState Read only
CONNECTING (0), OPEN (1), or CLOSED (2).EventSource.url Read only
DOMString representing the URL of the source.EventSource.withCredentials Read only
Boolean indicating whether the EventSource object was instantiated with CORS credentials set (true), or not (false, the default).EventSource.onerrorEventHandler called when an error occurs and the error event is dispatched on an EventSource object.EventSource.onmessageEventHandler called when a message event is received, that is when a message is coming from the source.EventSource.onopenEventHandler called when an open event is received, that is when the connection was just opened.This interface also inherits methods from its parent, EventTarget.
EventSource.close()readyState attribute to CLOSED. If the connection is already closed, the method does nothing.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);
} Note: You can find a full example on GitHub — see Simple SSE demo using PHP.
| Specification | Status | Comment |
|---|---|---|
| HTML Living Standard The definition of 'EventSource' in that specification. | Living Standard |
| Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|---|
| EventSource support | 6 | No support | 6.0 (6.0) | No support | (Yes) | 5 |
| Available in shared and dedicated workers[1] | (Yes) | No support | 53.0 (53.0) | No support | (Yes) | (Yes) |
| Feature | Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|
| EventSource support | 4.4 | 45 | No support | 12 | 4.1 |
| Available in shared and dedicated workers[1] | (Yes) | 53.0 (53.0) | No support | (Yes) | (Yes) |
[1] But not service workers as yet.
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/EventSource