refactor(auth): 重构鉴权架构,分离微信授权和用户登录
## 核心变更 ### 架构调整 - 移除 sessionid 前端管理逻辑,改由后端自动处理(cookie) - 移除接口白名单机制,所有接口直接发送 - 简化 401 处理,统一跳转登录页 - 分离微信授权(openid)和用户登录两个独立概念 ### 文件变更 **新增文件:** - src/utils/openid.js - 微信授权管理(wx.login、miniProgramAuthAPI) - src/stores/user.js - 用户状态管理(Pinia) - docs/specs/2026-02-02-auth-refactoring.md - 鉴权重构规划文档 **修改文件:** - src/app.js - 启动时检查登录状态,移除旧授权逻辑 - src/utils/request.js - 简化拦截器,移除白名单和 sessionid - src/pages/login/index.vue - 使用新的登录 API(uuid、password) - src/app.config.js - 移除 pages/auth/index 引用 - src/pages/mine/index.vue - 适配新的鉴权逻辑 - src/utils/config.js - 配置调整 - src/api/user.js - API 文档更新 - .eslintrc.cjs - ESLint 配置调整 - .claude/settings.local.json - Claude 设置更新 **删除文件:** - src/utils/authRedirect.js - 移除旧的授权重定向逻辑 - src/pages/auth/* - 移除旧的授权页面 ## 新的鉴权流程 1. 小程序启动 → 确保 openid 已授权(wx.login) 2. 如果 miniProgramAuthAPI 返回 user → 自动登录 3. 如果未登录 → 不跳转,允许用户浏览小程序 4. 用户操作触发接口返回 401 → 跳转登录页 ## 优势 - ✅ 简化前端逻辑,不需要维护白名单 - ✅ sessionid 由后端统一管理,更安全 - ✅ 用户体验更好,启动时不强制登录 - ✅ 代码更清晰,职责分离 Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Showing
16 changed files
with
1234 additions
and
687 deletions
docs/specs/2026-02-02-auth-refactoring.md
0 → 100644
src/pages/auth/index.config.js
deleted
100755 → 0
src/pages/auth/index.less
deleted
100644 → 0
src/pages/auth/index.vue
deleted
100644 → 0
src/stores/user.js
0 → 100644
src/utils/authRedirect.js
deleted
100644 → 0
src/utils/openid.js
0 → 100644
-
Please register or login to post a comment