# 会会数字分身 · 真实短信验证码登录 — 落地说明(2026-07-21) ## 功能状态:✅ 已端到端上线(测试环境) 真实手机号 + 会会短信验证码登录现已完整可用,前端已部署、后端已对接会会开放平台(fat-open)。 ## 访问地址 - 登录页:`http://192.168.1.188:8099/#/login/sms`(需与本机同网段或通过隧道访问) - API 基址:前端经 nginx `/api` 代理至后端 `avatar-backend:8000` ## 使用流程(用户侧) 1. 浏览器打开登录页,输入**本人真实手机号**(11 位)。 2. 点「获取验证码」→ 触发会会开放平台真实短信下发。 3. 手机收到 6 位验证码,填入。 4. 点「登录 / 创建分身」→ 后端换会会 `access_token` + `userId`,自动建/链本地 `users` 表(按 `huihui_user_id` 唯一),签发本系统 `app_token` 作为会话并跳转到首页。 ## 技术链路 - 前端 `SmsLogin.vue` → `sendSmsCode(phone)` / `loginBySms(phone, code)` → `POST /huihui/sms/send` `{phone}`、`POST /huihui/sms/login` `{phone, code}` - 后端 `routers/huihui_auth.py`: - 发码:`POST /open/mobile/sms/code`(query,公共字段签名,北京时间戳) - 登录:`POST /open/login/token`(formData,`loginType=code`、`isRegister=true`) - 签名范式与会会 `sign(1).js` 逐字节一致 - 关键修复:容器用 `timezone(timedelta(hours=8))` 生成时间戳,规避会会网关按北京时间校验导致的"签名验证失败"。 ## 本次变更 1. `src/views/SmsLogin.vue`:移除「演示模式」误导性 banner 与 devCode 自动填入,纯真实模式;保留玻璃态 UI / 渐变 CTA / 倒计时等 Premium 视觉。 2. 本地 `vite build` → `rsync dist/` 至 geo-server → `docker cp` 进 `avatar-test-frontend` 容器并重启,完成部署(前端容器已 3 天旧构建,现已更新)。 ## 部署后验证 - ✅ 新 `SmsLogin` chunk 已含「会会数字分身」文案(确认新前端生效) - ✅ `GET /api/huihui/me` 经代理返回 `401 未登录`(路由存活、代理通) - ✅ 后端 `:8011` 直连同结果 ## 备注 - 真实短信由会会 fat-open 网关下发,需用户本人手机号完成最后一步登录。 - 如需我代为触发一次真实短信以验证会会集成,请提供接收验证码的手机号。