From 76255f675739f5bb720d31d4ebef90611ecb4ec8 Mon Sep 17 00:00:00 2001 From: jingrow Date: Tue, 18 Nov 2025 23:18:17 +0800 Subject: [PATCH] fix: support Website User login by validating session cookie instead of message text --- apps/jingrow/frontend/src/shared/stores/auth.ts | 2 +- apps/jingrow/jingrow/utils/auth.py | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/apps/jingrow/frontend/src/shared/stores/auth.ts b/apps/jingrow/frontend/src/shared/stores/auth.ts index 2ebcaba..a75639c 100644 --- a/apps/jingrow/frontend/src/shared/stores/auth.ts +++ b/apps/jingrow/frontend/src/shared/stores/auth.ts @@ -24,7 +24,7 @@ export const useAuthStore = defineStore('auth', () => { try { const response = await loginApi(username, password) - if (response.message === 'Logged In' && response.user) { + if (response.user) { user.value = response.user isAuthenticated.value = true diff --git a/apps/jingrow/jingrow/utils/auth.py b/apps/jingrow/jingrow/utils/auth.py index 3e60e9d..bb2dbba 100644 --- a/apps/jingrow/jingrow/utils/auth.py +++ b/apps/jingrow/jingrow/utils/auth.py @@ -124,9 +124,10 @@ def login(username: str, password: str) -> dict: response = session.post(url, headers=headers, data=data, timeout=30) if response.status_code == 200: + session_cookie = _extract_session_cookie_from_response(response, session) result = response.json() - if result.get("message") == "Logged In": - session_cookie = _extract_session_cookie_from_response(response, session) + + if session_cookie: return { "success": True, "message": result.get("message", "Logged In"), @@ -135,7 +136,7 @@ def login(username: str, password: str) -> dict: else: return { "success": False, - "message": result.get("message", "登录失败") + "message": result.get("message", "登录失败:未获取到会话凭证") } else: error_msg = f"登录请求失败 (HTTP {response.status_code})"