From b9f91d090307c66e5e99dc6197d741edced15559 Mon Sep 17 00:00:00 2001 From: wanghanlin <1533525126@qq.com> Date: Tue, 18 Aug 2026 11:53:38 +0800 Subject: [PATCH] =?UTF-8?q?fix(sse):=20=E4=BF=AE=E5=A4=8D=20SSE=20?= =?UTF-8?q?=E9=89=B4=E6=9D=83=E5=A4=B4=E8=A6=86=E7=9B=96=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E5=B9=B6=E5=90=8C=E6=AD=A5=E6=B5=8B=E8=AF=95=E7=94=A8=E4=BE=8B?= =?UTF-8?q?=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - sse.ts authHeaders 仅当调用方未显式提供 Authorization 时才注入管理后台 token,避免覆盖测试面板传入的 SDK Token - client/README.md、client/CLAUDE.md 同步测试用例数量 22 → 10 --- client/CLAUDE.md | 2 +- client/README.md | 8 ++++---- frontend/src/utils/sse.ts | 3 ++- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/client/CLAUDE.md b/client/CLAUDE.md index eb91c47..5d1cdbf 100644 --- a/client/CLAUDE.md +++ b/client/CLAUDE.md @@ -26,7 +26,7 @@ npm run dev - 构建工具:Rollup + `@rollup/plugin-typescript` + `@rollup/plugin-terser`,配置见 `rollup.config.js` - TypeScript 配置:`tsconfig.json`,`target: ES2017`,`strict: true`,`rootDir: ./src`,不生成 `.d.ts` - 产物双份:`chatbot-sdk.js`(未压缩 + sourcemap,~93KB)和 `chatbot-sdk.min.js`(压缩,~45KB) -- **无测试框架**:验证通过后端的 `http://localhost:9090/sdk/test.html` 运行 22 个浏览器端用例(见 README 第十四节),本工程内没有可运行的自动化测试 +- **无测试框架**:验证通过后端的 `http://localhost:9090/sdk/test.html` 运行 10 个浏览器端核心用例(见 README 第十四节),本工程内没有可运行的自动化测试 ## 运行时依赖 diff --git a/client/README.md b/client/README.md index db05c6e..974ea86 100644 --- a/client/README.md +++ b/client/README.md @@ -418,10 +418,10 @@ client/ 访问 `http://localhost:9090/sdk/test.html` 运行自动化验证。 -测试覆盖(22 个用例): +测试覆盖(10 个核心用例): | 编号 | 阶段 | 功能 | |------|------|------| -| T1-T13 | P0 | 全局挂载、参数校验、DOM 创建、open/close、默认值、主题色、位置、destroy、缓存、API 对话 | -| T14-T19 | P1 | Markdown 样式、知识库分类切换、RAG 来源样式、RAG SSE 接口、RAG 来源接口、分类树接口 | -| T20-T22 | P2 | 多语言国际化、会话管理面板、会话列表接口 | +| T1-T6 | P0 | 全局加载、参数校验、DOM 创建、open/close、destroy 清理、实际对话 | +| T7-T9 | P1 | SSE 流式接口、RAG 引用来源、知识库分类切换 | +| T10 | P2 | 多语言国际化 | diff --git a/frontend/src/utils/sse.ts b/frontend/src/utils/sse.ts index 3c5e4e5..721b856 100644 --- a/frontend/src/utils/sse.ts +++ b/frontend/src/utils/sse.ts @@ -11,7 +11,8 @@ import { getToken } from '@/utils/token' function authHeaders(extra?: Record): Record { const token = getToken() const base: Record = extra ? { ...extra } : {} - if (token) base['Authorization'] = `Bearer ${token}` + // 仅当调用方未显式提供 Authorization 时才注入管理后台 token,避免覆盖调用方传入的鉴权头(如测试面板的 SDK Token) + if (token && !base['Authorization']) base['Authorization'] = `Bearer ${token}` return base }