Files
huihuiSquare/overview-password-login-2026-07-21.md
2026-07-24 14:04:21 +08:00

2.6 KiB
Raw Blame History

会会数字分身 · 短信收不到 + 账号密码登录

1. "收不到短信验证码" 是否接通?

已接通,但预发环境不下发真实短信。

实测证据(直连会会网关):

  • 后端日志:用户的发码/登录请求已到达并 200 OK
  • 会会原始响应:{code:0, message:"验证码发送成功", ...}
  • 签名算法、appId/accessId/secret 均正确,时间戳走 24h HH(避免"签名验证失败")。

为什么收不到:当前对接的是 fat-open.99hui.com(会会预发/测试网关)。 它接收请求并返回"发送成功",但不实际把短信下发到真实手机(测试环境模拟发送)。 这是环境限制,不是代码 bug。要真实收到短信需切到生产网关 99hui.com/api/usercenter(同套开放平台凭证通常通用,但生产是否真连短信通道需确认/由会会开启)。

2. 新增「账号密码登录」(默认方式)

既然短信在测试环境不可达,新增可靠的账号密码登录,并设为默认标签。

后端 backend/routers/huihui_auth.py

  • 新增 pwd_loginPOST /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/login
  • src/store/user.ts:新增 loginByPwd action
  • src/views/SmsLogin.vue分段切换 UI
    • 默认标签 密码登录(账号/手机号 + 密码)
    • 次选标签 短信登录(原手机号+验证码)

部署

vite buildrsync dist/docker cpavatar-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 内设置/重置密码)。