feat: 添加后台登录验证码、记住密码功能,优化媒体资源与前端规范
- 新增后台登录图形验证码功能,完善登录安全防护 - 新增登录rememberMe参数,控制Refresh Token的会话持久化策略 - 实现OSS私有桶媒体URL自动签名,统一处理图片资源的临时访问签名 - 新增素材库数据库表与上传API,规范媒体资源管理流程 - 统一前端UI图标使用@element-plus/icons-vue,重构布局图标组件 - 登录页新增验证码输入、刷新功能,添加账号记忆与记住密码逻辑 - 更新全套文档,补充API契约、技术决策记录与集成流程说明 - 修复多个业务页面的图标展示问题,新增认证流程相关测试用例
This commit is contained in:
@@ -70,14 +70,18 @@ yarn dev:mp-weixin
|
||||
|
||||
- `GET /health` 返回健康状态。
|
||||
- `GET /api/public/site-config` 返回前台站点配置。
|
||||
- `POST /api/admin/auth/login` 返回统一包裹的登录结果。
|
||||
- `GET /api/admin/auth/captcha` 返回图形验证码和短时 `captchaId`。
|
||||
- `POST /api/admin/auth/login` 携带 `captchaId`、`captchaCode` 和可选 `rememberMe` 后返回统一包裹的登录结果;验证码错误或过期后重新获取。
|
||||
- 管理端登录后依次读取 `/api/admin/system/profile` 和 `/api/admin/system/routers`;后者按当前管理员权限提供动态导航树。
|
||||
- 所有成功响应包含数字 `code`、`msg: "success"` 和 `data`;失败响应的 `data` 必须为 `null`。
|
||||
|
||||
管理端重点检查:
|
||||
|
||||
- 登录后请求带 `Authorization: Bearer <access-token>`,Refresh Token 只通过 HttpOnly Cookie 传递。
|
||||
- 登录页应展示验证码图片,点击图片可刷新;验证码失败后自动刷新,不能在前端缓存或记录验证码答案。
|
||||
- “记住密码”只控制 Refresh Token Cookie 是否持久化;前端最多记住账号和勾选偏好,不得保存明文密码。
|
||||
- 动态路由只注册 `/api/admin/system/routers` 返回的页面菜单;目录用于组织层级,按钮只用于按钮权限,不注册为页面。
|
||||
- 管理端界面图标统一由 `@element-plus/icons-vue` 提供;菜单返回的图标名经 `LayoutIcon` 白名单映射,未知值显示默认图标。顾问服务详情中的 `icon` 字段仍按业务内容数据处理。
|
||||
- 变更角色、菜单或用户关联后,权限缓存失效时要重新登录或重新加载菜单,确认侧栏、路由和按钮权限同步变化。
|
||||
- 站点模块、玩法、详情、管家、线索和媒体接口按当前契约返回。
|
||||
- 新增、更新、删除和排序成功后,页面使用接口返回的数据更新状态,不自行生成 ID 或排序结果。
|
||||
|
||||
Reference in New Issue
Block a user