From 39aacf5fb61a0f2f7fb9f13ee4c70c74a125f529 Mon Sep 17 00:00:00 2001 From: "1808837298@qq.com" <1808837298@qq.com> Date: Mon, 10 Feb 2025 20:24:14 +0800 Subject: [PATCH] refactor: improve SSE response handling in Playground - Simplify event listener logic for streaming responses - Add null-safe checks for payload content - Optimize message generation and completion flow --- web/src/pages/Playground/Playground.js | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/web/src/pages/Playground/Playground.js b/web/src/pages/Playground/Playground.js index d97e5925..3468d2b1 100644 --- a/web/src/pages/Playground/Playground.js +++ b/web/src/pages/Playground/Playground.js @@ -157,20 +157,17 @@ const Playground = () => { payload: JSON.stringify(payload), }); source.addEventListener("message", (e) => { - if (e.data !== "[DONE]") { - let payload = JSON.parse(e.data); - // console.log("Payload: ", payload); - if (payload.choices.length === 0) { - source.close(); - completeMessage(); - } else { - let text = payload.choices[0].delta.content; - if (text) { - generateMockResponse(text); - } - } - } else { + // 只有收到 [DONE] 时才结束 + if (e.data === "[DONE]") { + source.close(); completeMessage(); + return; + } + + let payload = JSON.parse(e.data); + // 检查是否有 delta content + if (payload.choices?.[0]?.delta?.content) { + generateMockResponse(payload.choices[0].delta.content); } });