Spaces:
Sleeping
Sleeping
testcoder-ui commited on
Commit ·
6d30548
1
Parent(s): 763d966
Add detailed OAuth debugging: log oauth_info contents
Browse files
app.py
CHANGED
|
@@ -235,13 +235,26 @@ def check_user_access(request: gr.Request) -> Tuple[str, bool]:
|
|
| 235 |
# OAuth 用户信息在 session['oauth_info'] 中
|
| 236 |
if 'oauth_info' in session:
|
| 237 |
oauth_info = session.get('oauth_info', {})
|
| 238 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 239 |
if username:
|
| 240 |
logger.info(f"从 session['oauth_info'] 获取用户名: {username}")
|
| 241 |
|
| 242 |
# 或者在 session['user'] 中
|
| 243 |
elif 'user' in session:
|
| 244 |
user_info = session.get('user', {})
|
|
|
|
| 245 |
username = user_info.get('preferred_username') or user_info.get('name') or user_info.get('username')
|
| 246 |
if username:
|
| 247 |
logger.info(f"从 session['user'] 获取用户名: {username}")
|
|
@@ -252,7 +265,10 @@ def check_user_access(request: gr.Request) -> Tuple[str, bool]:
|
|
| 252 |
logger.warning("1. 已在 Space Settings 中启用 OAuth (hf_oauth: true)")
|
| 253 |
logger.warning("2. 用户已通过 'Login with Hugging Face' 按钮登录")
|
| 254 |
if hasattr(request, 'request') and hasattr(request.request, 'session'):
|
| 255 |
-
|
|
|
|
|
|
|
|
|
|
| 256 |
|
| 257 |
if not username:
|
| 258 |
return "", False
|
|
|
|
| 235 |
# OAuth 用户信息在 session['oauth_info'] 中
|
| 236 |
if 'oauth_info' in session:
|
| 237 |
oauth_info = session.get('oauth_info', {})
|
| 238 |
+
# 打印 oauth_info 的内容用于调试
|
| 239 |
+
logger.info(f"oauth_info 内容: {oauth_info}")
|
| 240 |
+
logger.info(f"oauth_info 的所有键: {list(oauth_info.keys()) if isinstance(oauth_info, dict) else 'Not a dict'}")
|
| 241 |
+
|
| 242 |
+
# 尝试多个可能的用户名字段
|
| 243 |
+
username = (
|
| 244 |
+
oauth_info.get('preferred_username') or
|
| 245 |
+
oauth_info.get('name') or
|
| 246 |
+
oauth_info.get('sub') or
|
| 247 |
+
oauth_info.get('username') or
|
| 248 |
+
oauth_info.get('login') or
|
| 249 |
+
oauth_info.get('email', '').split('@')[0] # 使用 email 的用户名部分
|
| 250 |
+
)
|
| 251 |
if username:
|
| 252 |
logger.info(f"从 session['oauth_info'] 获取用户名: {username}")
|
| 253 |
|
| 254 |
# 或者在 session['user'] 中
|
| 255 |
elif 'user' in session:
|
| 256 |
user_info = session.get('user', {})
|
| 257 |
+
logger.info(f"user 内容: {user_info}")
|
| 258 |
username = user_info.get('preferred_username') or user_info.get('name') or user_info.get('username')
|
| 259 |
if username:
|
| 260 |
logger.info(f"从 session['user'] 获取用户名: {username}")
|
|
|
|
| 265 |
logger.warning("1. 已在 Space Settings 中启用 OAuth (hf_oauth: true)")
|
| 266 |
logger.warning("2. 用户已通过 'Login with Hugging Face' 按钮登录")
|
| 267 |
if hasattr(request, 'request') and hasattr(request.request, 'session'):
|
| 268 |
+
session = request.request.session
|
| 269 |
+
logger.warning(f"Session keys: {list(session.keys())}")
|
| 270 |
+
if 'oauth_info' in session:
|
| 271 |
+
logger.warning(f"oauth_info: {session.get('oauth_info')}")
|
| 272 |
|
| 273 |
if not username:
|
| 274 |
return "", False
|