EventSource
Background
The EventSource
interface is a server-sent event API that allows a server to push events to a client. The EventSource
object is used to receive server-sent events. It connects to a server over HTTP and receives events in a text-based format.
Constructor
let eventSource = new EventSource(url, options);
url
USVString
- The URL to which to connect.
options
EventSourceInit
- An optional dictionary containing any optional settings.
By default, the EventSource
will use the global fetch()
function under the
covers to make requests. If you need to use a different fetch implementation as
provided by a Cloudflare Workers binding, you can pass the fetcher
option:
export default { async fetch(req, env) { let eventSource = new EventSource(url, { fetcher: env.MYFETCHER }); // ... }
};
Note that the fetcher
option is a Cloudflare Workers specific extension.
Properties
Methods
eventSource.close()
- Closes the connection.
eventSource.onopen
- An event handler called when a connection is opened.
eventSource.onmessage
- An event handler called when a message is received.
eventSource.onerror
- An event handler called when an error occurs.
Events
message
- Fired when a message is received.
open
- Fired when the connection is opened.
error
- Fired when an error occurs.
Class Methods
EventSource.from(readableStream
ReadableStream
) : EventSource- This is a Cloudflare Workers specific extension that creates a new
EventSource
object from an existingReadableStream
. Such an instance does not initiate a new connection but instead attaches to the provided stream.
- This is a Cloudflare Workers specific extension that creates a new