v1.2.77
ci/woodpecker/tag/build Pipeline was successful
① 需求:手机号登录的「获取验证码」与「输入验证码登录」两步都需要各自的图片验证码,
且两者相互独立(不共用同一个 captchaId)。
② 后端(backed/internal/handler/sms_login.go):
- SmsSendRequest / SmsLoginRequest 增加 captchaId + captchaCode 字段;
- SmsSend 与 SmsLogin 各自调用 service.VerifyCaptcha 校验,
缺失或错误分别返回「请输入图片验证码」/「验证码错误或已过期」。
(原 SmsSend 仅有 IP 限流,现补上图片验证码,防脚本刷短信。)
③ 前端(LoginView.vue + api/auth.ts):
- 新增两组独立验证码状态:发送用(smsSendCaptcha*)与登录用(smsLoginCaptcha*),
各自有 id / image / 输入 / 错误 / loading;
- 通用刷新函数 loadSmsCaptcha('send'|'login');进入手机号模式时两组各取一份;
- 手机号模式下渲染两个验证码输入框(发送前一个、登录前一个);
- sendSmsCode / smsLogin 增加 captchaId + captchaCode 参数;
- 发码失败或登录失败分别刷新对应验证码。
④ 邀请码兼容:手机号登录路径继续透传 inviteCode(URL ?invite= 自动带入),
新用户注册时经通用注册流程发放邀请/注册奖励;已有账号匹配时不重复发奖。
⑤ 验证:go build / go vet 通过;vue-tsc --noEmit、npm run build 通过。
Description
No description provided
Languages
Go
58.2%
Vue
35.3%
TypeScript
4.1%
CSS
1.5%
JavaScript
0.6%
Other
0.2%