mirror of
https://github.com/csunny/DB-GPT.git
synced 2026-07-17 18:28:42 +00:00
raise except if user_id is lost
This commit is contained in:
@@ -3,7 +3,8 @@ from pilot.user.user_db import (
|
||||
UserDao
|
||||
)
|
||||
|
||||
from pilot.user.user_request import UserRequest, get_user_from_headers
|
||||
from pilot.user.user_request import UserRequest
|
||||
from pilot.user.auth import get_user_from_headers
|
||||
|
||||
__all__ = [
|
||||
"UserEntity",
|
||||
|
||||
15
pilot/user/auth.py
Normal file
15
pilot/user/auth.py
Normal file
@@ -0,0 +1,15 @@
|
||||
from fastapi import Header
|
||||
from pilot.user import UserDao, UserRequest
|
||||
|
||||
|
||||
def get_user_from_headers(user_id: str = Header(...)):
|
||||
try:
|
||||
if user_id:
|
||||
# 确保数据库存在当前用户,如果不存在则抛出异常
|
||||
user_dao = UserDao()
|
||||
user_dao.get_by_user_id(user_id=user_id)
|
||||
return UserRequest(user_id=user_id)
|
||||
else:
|
||||
raise f"User Not Login"
|
||||
except Exception as e:
|
||||
raise f"Authentication failed. {str(e)}"
|
||||
@@ -1,6 +1,4 @@
|
||||
import json
|
||||
|
||||
from fastapi import Header
|
||||
from pydantic import BaseModel
|
||||
|
||||
|
||||
@@ -13,10 +11,3 @@ class UserRequest(BaseModel):
|
||||
nick_name: str = None
|
||||
email: str = None
|
||||
avatar_url: str = None
|
||||
|
||||
|
||||
def get_user_from_headers(user_id: str = Header(...)):
|
||||
try:
|
||||
return UserRequest(user_id=user_id)
|
||||
except Exception as e:
|
||||
raise f"Authentication failed."
|
||||
|
||||
Reference in New Issue
Block a user