Zuncle
27a05210ee
fix(auth): 修复活动页和商品详情页未登录即弹登录框导致审核失败
问题背景:
- 平台审核结论:页面未完整浏览、体验详情时即要求授权登录,属于不合规
- 用户应能先浏览页面内容,仅在执行操作(抽奖/兑换/购买)时才引导登录
根因分析:
1. api/appUser.js 中活动浏览类 API(getActivityDetail 等)使用 authRequest,
虽然后端接口是公开的,但同页面的 getGamePasses 等需认证接口返回 401
触发全局登录弹窗
2. getProductDetail 使用 authRequest 调用认证接口,未登录直接 401
3. 全局 401 拦截器不区分浏览请求和操作请求
修改内容:
1. api/appUser.js: 6 个浏览类 API 函数从 authRequest 改为 request
- getActivityDetail, getActivityIssues, getActivityIssueRewards
- getIssueDrawLogs, getMatchingCardTypes, getProductDetail
这些接口在后端均为公开路由,不需要携带 token
2. 活动页面 onLoad 中条件调用认证接口:
- wuxianshang/index.vue: fetchPasses() 仅在已登录时调用
- yifanshang/index.vue: fetchPasses() 仅在已登录时调用
- duiduipeng/index.vue: fetchGamePasses() 仅在已登录时调用
次数卡(game passes)接口需要认证,未登录时跳过即可,
不影响页面浏览体验
3. utils/request.js: request() 函数增加 suppressAuthModal 参数
支持调用方按需静默 401 弹窗,作为安全兜底机制
验证场景:
- 未登录 → 打开无限赏/一番赏/对对碰/商品详情 → 正常显示,无登录弹窗
- 未登录 → 点击抽奖/兑换按钮 → 弹出登录提示(符合平台规范)
- 已登录 → 所有功能正常,次数卡信息正常加载
2026-03-26 14:35:26 +08:00
..
2026-02-27 20:57:24 +08:00
2026-03-25 22:01:22 +08:00
2026-02-27 20:57:24 +08:00
2026-02-27 20:57:24 +08:00
2026-02-27 20:57:24 +08:00
2026-02-27 20:57:24 +08:00
2026-02-27 20:57:24 +08:00
2026-02-27 20:57:24 +08:00
2026-03-26 14:35:26 +08:00
2026-02-27 20:57:24 +08:00
2026-02-27 20:57:24 +08:00