From 64fcd55305aa0a630601eb737d03682805e02291 Mon Sep 17 00:00:00 2001 From: Untone Date: Mon, 16 Oct 2023 23:32:28 +0300 Subject: [PATCH] fix-stream-once --- src/main.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main.rs b/src/main.rs index cfe9a3c..62537fb 100644 --- a/src/main.rs +++ b/src/main.rs @@ -115,8 +115,13 @@ async fn connect_handler( ServerError("Internal Server Error") })?; - let server_event_stream = - futures::stream::once(async move { Ok::<_, actix_web::Error>(Bytes::from(server_event)) }); + let server_event_stream = futures::stream::unfold(rx, |mut rx| async { + let result = rx.recv().await; + match result { + Ok(server_event) => Some((Ok::<_, actix_web::Error>(Bytes::from(server_event)), rx)), + Err(_) => None, + } + }); Ok(HttpResponse::Ok() .append_header(("content-type", "text/event-stream"))