2.6 KiB
2.6 KiB
会会数字分身 · 短信收不到 + 账号密码登录
1. "收不到短信验证码" 是否接通?
已接通,但预发环境不下发真实短信。
实测证据(直连会会网关):
- 后端日志:用户的发码/登录请求已到达并
200 OK。 - 会会原始响应:
{code:0, message:"验证码发送成功", ...} - 签名算法、
appId/accessId/secret均正确,时间戳走 24hHH(避免"签名验证失败")。
为什么收不到:当前对接的是 fat-open.99hui.com(会会预发/测试网关)。
它接收请求并返回"发送成功",但不实际把短信下发到真实手机(测试环境模拟发送)。
这是环境限制,不是代码 bug。要真实收到短信需切到生产网关 99hui.com/api/usercenter(同套开放平台凭证通常通用,但生产是否真连短信通道需确认/由会会开启)。
2. 新增「账号密码登录」(默认方式)
既然短信在测试环境不可达,新增可靠的账号密码登录,并设为默认标签。
后端 backend/routers/huihui_auth.py
- 新增
pwd_login→POST /api/huihui/pwd/login - 调会会
/open/login/token,参数与会会开放平台一致:username=账号/手机号, password=密码, loginType=password, grantType=password, isRegister=false - 复用
_issue_session建/链本地users表并签发app_token - 账号非 11 位手机号时不覆盖已有
user.phone
前端
src/api/index.ts:新增loginByPassword(account, password)→/huihui/pwd/loginsrc/store/user.ts:新增loginByPwdactionsrc/views/SmsLogin.vue:分段切换 UI- 默认标签 密码登录(账号/手机号 + 密码)
- 次选标签 短信登录(原手机号+验证码)
部署
vite build → rsync dist/ → docker cp 进 avatar-test-frontend 容器 → docker restart。
验证
- 线上 SmsLogin chunk 含「密码登录」、api bundle 含「huihui/pwd/login」✅
- 实时
POST /huihui/pwd/login(假密码)→ 会会返回账号或密码错误!(说明签名已被接受、登录链路连通,仅密码错)✅
3. 你现在怎么登录
打开 http://192.168.1.188:8099/#/login/sms(同网段/隧道):
- 推荐:密码登录 —— 输入你的会会账号(手机号或用户名)+ 密码,点「登录 / 创建分身」。
- 短信登录仅在会会生产网关真正下发短信时才有用;当前测试环境点了显示"发送成功"但手机收不到。
注:会会开放平台账号须已设置密码,否则密码登录会报「账号或密码错误」(可先在会会 App 内设置/重置密码)。