From 4388a6781a727acecf7fbf767bac5e2bf96ba49c Mon Sep 17 00:00:00 2001 From: Zayden Jung Date: Mon, 18 May 2026 23:45:17 +0800 Subject: [PATCH] add default avatar gen is google avatar not exists --- app/auth.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/app/auth.py b/app/auth.py index 2027559..3a30693 100644 --- a/app/auth.py +++ b/app/auth.py @@ -85,12 +85,19 @@ async def auth_callback(request: Request, code: str, state: str): import secrets random_suffix = secrets.token_hex(3) # 生成 6 位随机字符 suggested_handle = f"{base_handle}_{random_suffix}" + + # 如果 Google 没有头像,使用 DiceBear 头像生成器作为兜底 + google_avatar = user_info.get("picture") + if not google_avatar: + default_avatar_url = f"https://api.dicebear.com/7.x/lorelei/svg?seed={base_handle}" + else: + default_avatar_url = google_avatar user = User( google_id=user_info["id"], email=user_info["email"], name=user_info["name"], - avatar=user_info["picture"], + avatar=default_avatar_url, handle=suggested_handle, ) db.add(user)