feat(usercenter): SSO /sso 落地页(拿票兑会话→自动登录)
Deploy Server / deploy-server (push) Successful in 2m47s

App 打开 app.yanmeiai.com/sso?t=<ticket>&redirect=<路径>;本页 exchangeWebTicket→setSession
(与正常登录同路径)→跳白名单相对路径。镜像 jiu sso.njk。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013nMthbVEmQquxBRKb9Fj8u
This commit is contained in:
wangjia
2026-07-07 00:02:48 +08:00
parent 1e13f35219
commit ec0942e1e7
6 changed files with 141 additions and 0 deletions
+15
View File
@@ -64,6 +64,21 @@ export class MockClient implements ApiClient {
return s;
}
// 演示态:任意非 'invalid' 票据都兑换成功;'invalid' 用于验收失败态文案。
async exchangeWebTicket(ticket: string): Promise<Session> {
await delay(300);
if (ticket === 'invalid') {
throw new ApiError({
code: 'auth.ticket_invalid',
message_zh: '登录票据无效或已过期,请重新从 App 打开',
message_en: 'Login ticket is invalid or expired, please reopen from the app',
});
}
const s = makeSession();
setSession(s);
return s;
}
async refresh(): Promise<Session> {
await delay(150);
const s = makeSession();