express-ts-sse
v1.0.2
Published
An Express middleware for Server-Sent Events (EventSource)
Downloads
90
Maintainers
Readme
express-ts-sse
An Express middleware for quick'n'easy server-sent events.
About
express-ts-sse
is meant to keep things simple. It's use ts refactor and base on express-ts-sse
library. You need to send server-sent events without too many complications and fallbacks? This is the library to do so.
Install:
pnpm i express-ts-sse
Usage example:
Options:
You can pass an optional options object to the constructor. Currently it only supports changing the way initial data is treated. If you set isSerialized
to false
, the initial data is sent as a single event. The default value is true
.
import { EventSource } from "express-ts-sse"; // or import EventSource from "express-ts-sse"
var sse = new SSE(["array", "containing", "initial", "content", "(optional)"], {
isSerialized: false,
initialEvent: "optional initial event name",
});
Server:
var EventSource = require('express-ts-sse');
var sse = new EventSource(["array", "containing", "initial", "content", "(optional)"]);
...
app.get('/stream', sse.init);
...
sse.send(content);
sse.send(content, eventName);
sse.send(content, eventName, customID);
sse.updateInit(["array", "containing", "new", "content"]);
sse.serialize(["array", "to", "be", "sent", "as", "serialized", "events"]);
Client:
var es = new EventSource('/stream');
es.onmessage = function (event) {
...
};
es.addEventListener(eventName, function (event) {
...
});