Почему мои события не получают события от Spring Boot SseeMitter, даже если журналы сервера показывают успешную доставкуJavascript

Форум по Javascript
Ответить
Anonymous
 Почему мои события не получают события от Spring Boot SseeMitter, даже если журналы сервера показывают успешную доставку

Сообщение Anonymous »

❗ Проблема: < /strong>
Несмотря на то, что соединение открыто, и сервер отправляет событие, Frontend ничего не получает в AddEventListener ('order'). < /p>
Однако, если я жестко кодирует один Sseemitter и используйте /connect1 (см. Ниже), он работает с нагрузкой, но не с addEventlener ( /p> p> pre -wylener (). /> Это заставляет меня думать, что что -то не так с тем, как это событие отформатировано или работает менеджер излучения. Stream? Спасибо! < /P>

Я пытаюсь реализовать события Server-Sent (SSE), используя Spring Boot и Nuxt3. < /P>
Я установил основную конечную точку SSE, как это: < /p>

Код: Выделить всё

@GetMapping(value = "/subscribe", produces = MediaType.TEXT_EVENT_STREAM_VALUE)
public SseEmitter subscribe() {
return emitterManager.subscribe(); // returns a new emitter and adds it to a list
}
< /code>
Когда пользователь завершает платеж, я хочу уведомить веб-администратора в режиме реального времени: < /p>
emitterManager.sendEvent("order", gymIdx); // gymIdx is just a Long
< /code>
Вот как я слушаю на фронте: < /p>
onMounted(() => {
const eventSource = new EventSource('/api/v1/sse/subscribe');

eventSource.addEventListener('order', (event) => {
console.log('[✅ Event received]', event.data);
});

eventSource.onopen = () => {
console.log('[🔗 SSE connection opened]');
};

eventSource.onerror = (err) => {
console.warn('[❌ SSE error]', err);
};

onBeforeUnmount(() => {
eventSource.close();
});
});
< /code>
Я вижу журналы в бэкэнд, например: < /p>
📤 SSE sent: eventName=order, data=7483
Кроме того, это появляется на вкладке «Сеть браузера»:

[*] Запрос подписывания остается (ожидает)-которое ожидается для живого соединения

Тип ответа/событие

>

Подробнее здесь: https://stackoverflow.com/questions/795 ... r-even-tho
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»