-
Notifications
You must be signed in to change notification settings - Fork 45
Closed
Description
Hello, trying to use this package to consume events emitted by my backend server using sse_starlette
This is the formatting of my events:
{
"event": "message",
"data": token + "\n\n",
}
However when I try to fetch them in the frontend the request seems to be restarting before finishing, it eventually reaches the end and closes but not before restarting a few times:
DEBUG [EventSource] Will open new connection in 500 ms.
DEBUG [EventSource][onreadystatechange] ReadyState: HEADERS_RECEIVED(2), status: 200
DEBUG [EventSource][onreadystatechange] ReadyState: LOADING(3), status: 200
LOG Event: undefined
DEBUG [EventSource][onreadystatechange][OPEN] Connection opened.
LOG Event:
DEBUG [EventSource][onreadystatechange] ReadyState: LOADING(3), status: 200
LOG Event:
LOG Event: Hi
LOG Event: !
LOG Event: Welcome
DEBUG [EventSource][onreadystatechange] ReadyState: LOADING(3), status: 200
LOG Event:
LOG Event: Hi
LOG Event: !
LOG Event: Welcome
LOG Event: to
LOG Event: Canada
LOG Event: !
DEBUG [EventSource][onreadystatechange] ReadyState: LOADING(3), status: 200
LOG Event:
LOG Event: Hi
LOG Event: !
LOG Event: Welcome
LOG Event: to
LOG Event: Canada
LOG Event: !
LOG Event: How
LOG Event: can
LOG Event: I
DEBUG [EventSource][onreadystatechange] ReadyState: LOADING(3), status: 200
LOG Event:
LOG Event: Hi
LOG Event: !
LOG Event: Welcome
LOG Event: to
LOG Event: Canada
LOG Event: !
LOG Event: How
LOG Event: can
LOG Event: I
LOG Event: assist
LOG Event: you
LOG Event: today
LOG Event: ?
LOG Event:
LOG Event: STOP
DEBUG [EventSource][onreadystatechange] ReadyState: DONE(4), status: 200
LOG Event:
LOG Event: Hi
LOG Event: !
LOG Event: Welcome
LOG Event: to
LOG Event: Canada
LOG Event: !
LOG Event: How
LOG Event: can
LOG Event: I
LOG Event: assist
LOG Event: you
LOG Event: today
LOG Event: ?
LOG Event:
LOG Event: STOP
DEBUG [EventSource][onreadystatechange][DONE] Operation done.
Frontend Code:
const chat = async () => {
const stream = new EventSource(
"https://my-url.com",
{
body: JSON.stringify({
query: inputText,
}),
headers: {
"Content-Type": "application/json",
},
method: "POST",
pollingInterval: 0,
debug: true,
}
);
const eventListener = (event: any) => {
console.log("Event: " + event.data);
};
stream.addEventListener("message", eventListener);
stream.addEventListener("open", eventListener)
stream.addEventListener("close", eventListener)
return () => {
stream.removeAllEventListeners();
stream.close();
};
};
Using latest package version with Expo SDK 49. My backend server works as expected when using Postman but only seems to have issues in my frontend environment.
Any help is appreciated!
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels