From 77b983759956322fcd2259de4f1094217535dcdb Mon Sep 17 00:00:00 2001
From: zhaoqingang <zhaoqg0118@163.com>
Date: 星期四, 13 二月 2025 17:59:08 +0800
Subject: [PATCH] 登录问题优化
---
app/service/ragflow.py | 2 +-
app/config/env_conf/config.yaml | 4 ++--
app/service/difyService.py | 2 +-
app/api/user.py | 2 ++
app/api/auth.py | 6 +++---
5 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/app/api/auth.py b/app/api/auth.py
index c17b48b..abb3474 100644
--- a/app/api/auth.py
+++ b/app/api/auth.py
@@ -125,16 +125,14 @@
continue
try:
name = login_data.username
- email = ""
app_password = login_data.password
user_app = await UserAppDao(db).get_data_by_id(user.id, app["id"])
if user_app:
name = user_app.username
- email = user_app.email
app_password = user_app.decrypted_password(user_app.password)
else:
await update_user_info(db, user.id)
- token = await service.login(name, app_password,email=email)
+ token = await service.login(name, app_password)
token_dict[app["id"]] = token
except Exception as e:
return Response(code=500, msg=f"Failed to login with {app['id']}: {str(e)}")
@@ -172,6 +170,8 @@
@router.post("/v2/register", response_model=Response)
async def register_v2(user: UserCreate, db=Depends(get_db)):
+ if "@" in user.username:
+ return Response(code=400, msg="Username cannot contain @")
password = await password_rsa(user.password)
if not is_valid_password(password):
return Response(code=400, msg="The password must be at least 8 and contain both numbers and letters")
diff --git a/app/api/user.py b/app/api/user.py
index 57171ff..52d1e0f 100644
--- a/app/api/user.py
+++ b/app/api/user.py
@@ -23,6 +23,8 @@
async def add_user(user: UserInfo, current_user: UserModel = Depends(get_current_user), db=Depends(get_db)):
if not user.userName:
return Response(code=400, msg="The userName cannot be empty!")
+ if "@" in user.username:
+ return Response(code=400, msg="Username cannot contain @")
if user.pwd:
if not is_valid_password(user.pwd):
return Response(code=400, msg="The password must be at least 8 and contain both numbers and letters")
diff --git a/app/config/env_conf/config.yaml b/app/config/env_conf/config.yaml
index 14a2719..14c5ce7 100644
--- a/app/config/env_conf/config.yaml
+++ b/app/config/env_conf/config.yaml
@@ -2,7 +2,7 @@
sgb_base_url: http://192.168.20.119:13001
sgb_websocket_url: ws://192.168.20.119:13001
fwr_base_url: http://192.168.20.119:11080
-database_url: mysql+pymysql://root:rag_gateway@192.168.20.117:23306/rag_gateway
+database_url: mysql+pymysql://root:rag_gateway@192.168.20.116:23306/rag_gateway
sgb_db_url: mysql+pymysql://root:1234@192.168.20.119:13306/bisheng
fwr_db_url: mysql+pymysql://root:infini_rag_flow@192.168.20.119:15455/rag_flow
PUBLIC_KEY: |
@@ -17,7 +17,7 @@
basic_paper_url: http://192.168.20.231:8000
dify_base_url: http://192.168.20.116
dify_api_token: app-YmOAMDsPpDDlqryMHnc9TzTO
-postgresql_database_url: postgresql+asyncpg://kong:kongpass@192.168.20.117:5432/kong
+postgresql_database_url: postgresql+asyncpg://kong:kongpass@192.168.20.116:5432/kong
dify_workflow_clean: app-OpF0drPu0XcgqcekQpT4FA8a
dify_workflow_report: app-0MAkdFWqh9zxwmU69O0BFU1s
dify_database_url: postgresql+psycopg2://postgres:difyai123456@192.168.20.116:15432/dify
diff --git a/app/service/difyService.py b/app/service/difyService.py
index 21117e8..595ca4c 100644
--- a/app/service/difyService.py
+++ b/app/service/difyService.py
@@ -74,7 +74,7 @@
async def login(self, username: str, password: str, remember_me=True, invite_token:str="", email="") -> str:
# password = RagflowCrypto(settings.PUBLIC_KEY, settings.PRIVATE_KEY).encrypt(password)
- data = {"email":email if email else f"{username}@basic.com", "password": password, "remember_me": remember_me, "invite_token": invite_token,
+ data = {"email":username if "@" in username else f"{username}@basic.com", "password": password, "remember_me": remember_me, "invite_token": invite_token,
"language": "zh-Hans"}
async with httpx.AsyncClient() as client:
diff --git a/app/service/ragflow.py b/app/service/ragflow.py
index 08cc26f..f0e6fd8 100644
--- a/app/service/ragflow.py
+++ b/app/service/ragflow.py
@@ -54,7 +54,7 @@
response = await client.post(
f"{self.base_url}/v1/user/login",
headers={'Content-Type': 'application/json'},
- json={"email": email if email else f"{username}@example.com", "password": password}
+ json={"email": username if "@" in username else f"{username}@example.com", "password": password}
)
if response.status_code != 200:
raise Exception(f"Ragflow login failed: {response.text}")
--
Gitblit v1.8.0