feat(device): scope status SSE to SN management page

This commit is contained in:
tongtong committed 2026-11-09 21:42:10 +08:00
1 parent 2bd5b89380
commit fd3615407c
5 files changed
+82 -104

No files matched your search

+8 -1
View File
@@ -28,7 +28,7 @@
| 位置 | 定制内容 |
| --- | --- |
| `src/utils/request.ts` | 本地版请求层:`http` + `uploadHttp` 双实例、Bearer 注入、内置 token 刷新重试、响应直接解包 `data` |
| `src/utils/sse.ts` | 本地 SSE 实现(重连、鉴权、解析),页面直接 `import { useSse } from "@/utils/sse"` |
| `src/views/devices/sn/device-status-stream.ts` | TTSTD 设备 SN 管理页专用 SSE 客户端 |
| `.env.development` | `VITE_APP_BASE_API`、`VITE_APP_API_URL`、`VITE_BAIDU_MAP_AK`、`VITE_API_TYPE`,后端指向 `api.ttstd.com` |
| `vite.config.ts` | 端口兜底 3000、代理目标兜底 `VITE_APP_API_URL` |
| `types/env.d.ts` | 上述环境变量类型 |
@@ -147,3 +147,10 @@ git merge gitee/master
- 禁止为"减包"删除上游示例页(`src/views/demo/`)或 API 模块。
- 禁止直接改 `node_modules/`、`dist/`。
- 禁止在代码中硬编码后端地址、密钥、AK;统一走环境变量。
## 设备状态 SSE(TTSTD 自有)
- 后端上游提交 `e77d0b1f` 移除了旧的 `/api/v1/sse/connect`。设备 SN 管理页(`/#/devices/sn`)通过 `GET /api/v1/device/online/stream` 接收 `device-online-status` 事件,事件包含在线状态和 `screenState`。
- 页面激活时建立一个连接,列表与内嵌详情共用。离开页面、缓存停用或卸载时断开,并停止备用轮询。
- 客户端放在设备页面目录。不要在 Layout、全局登录流程或其他页面建立此连接。上游通知、字典和后台用户在线状态继续使用 `/api/v1/realtime/ws`。