开放多项目大屏免登录访问
需求描述:/admin/display 需要无需管理员登录即可直接查看多项目公开运行状态。 实现思路:新增公开字段白名单接口与独立大屏页面,移除该路由的管理员会话依赖,同时保留 /api/admin/overview 的鉴权并补充隐私、路由和页面回归测试。 验证:Go 全量测试通过;前端 18 个测试文件共 59 项通过,TypeScript 检查通过。
This commit is contained in:
24
task_plan.md
24
task_plan.md
@@ -4,7 +4,7 @@
|
||||
在已确认的产品、技术与设计基线上,交付可运行的景区排队叫号系统纵向切片,并以自动化测试验证多项目隔离、幂等叫号与隐私边界。
|
||||
|
||||
## Current Phase
|
||||
Phase 42(运营统计模块标题区呼吸空间优化)
|
||||
Phase 45(管理端大屏中心免登录访问)
|
||||
|
||||
## Phases
|
||||
|
||||
@@ -550,3 +550,25 @@ Phase 42(运营统计模块标题区呼吸空间优化)
|
||||
| Error | Attempt | Resolution |
|
||||
|---|---:|---|
|
||||
| PowerShell 下向 `rg` 传入 Unix 风格 `*_test.go` 路径通配符失败 | 1 | 后续改由 `rg` 自身的 `-g` 过滤文件,不再让 Windows 解析目录通配符 |
|
||||
|
||||
### Phase 45: 管理端大屏中心免登录访问(2026-07-31)
|
||||
- [x] 核对 `/admin/display` 前端路由、页面依赖与后端鉴权边界
|
||||
- [x] 新增仅包含公开大屏字段的免登录接口
|
||||
- [x] 将 `/admin/display` 切换为无需管理员会话的独立页面
|
||||
- [x] 补充路由、公开字段白名单与页面回归测试
|
||||
- [x] 完成前后端测试、类型检查和生产构建验证
|
||||
- **Status:** complete
|
||||
|
||||
#### Confirmed Decisions
|
||||
| Decision | Result | Why it matters |
|
||||
|---|---|---|
|
||||
| 管理端总览接口 | `/api/admin/overview` 继续强制管理员登录 | 该接口含活动游客联系方式和后台配置,不能为大屏免登录而整体放开 |
|
||||
| 公开大屏数据 | 新增字段白名单接口,仅返回项目名、公开票号、等待量、预计等待与刷新时间 | 满足多项目大屏展示,同时维持隐私与后台权限边界 |
|
||||
| 前端入口 | `/admin/display` 使用独立公开页面,不挂载管理员鉴权 Provider | 未登录访问不产生登录跳转或无意义的管理员会话探测 |
|
||||
|
||||
#### Errors Encountered
|
||||
| Error | Attempt | Resolution |
|
||||
|---|---:|---|
|
||||
| 首次组合补丁把内部网络路由误写为 `HandleFunc`,上下文未匹配 | 1 | 读取真实路由片段后按现有 `Handle` 行重新应用,未产生部分代码改动 |
|
||||
| 普通网页读取器因域名安全校验拒绝打开线上 URL | 1 | 改用只读应用内浏览器核对,不绕过安全校验 |
|
||||
| 应用内浏览器两次打开线上 URL 均超时 | 2 | 按有界重试停止继续访问;保留“代码已完成、线上尚未部署验证”的明确边界 |
|
||||
|
||||
Reference in New Issue
Block a user