From 84e62e4041f66ba3bb70b1113be62acee5353cc0 Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期一, 21 十月 2024 17:41:28 +0800 Subject: [PATCH] 获取第三方token接口 --- app/api/auth.py | 15 +++++++++++++-- app/models/token_model.py | 7 ++++++- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/app/api/auth.py b/app/api/auth.py index 588d7c8..ac974d3 100644 --- a/app/api/auth.py +++ b/app/api/auth.py @@ -1,10 +1,10 @@ from fastapi import APIRouter, Depends from sqlalchemy.orm import Session -from app.api import Response, pwd_context +from app.api import Response, pwd_context, get_current_user from app.config.config import settings from app.models.base_model import get_db -from app.models.token_model import upsert_token +from app.models.token_model import upsert_token, get_token from app.models.user import UserCreate, LoginData from app.models.user_model import UserModel from app.service.auth import authenticate_user, create_access_token @@ -76,3 +76,14 @@ "username": user.username, "nickname": "", }) + + +@router.get("/token", response_model=Response) +async def token_api(db: Session = Depends(get_db), current_user: UserModel = Depends(get_current_user)): + # 鏌ヨ鐜版湁璁板綍 + token = get_token(db, current_user.id) + if token is None: + return Response(code=400, msg="token not found") + return Response(code=200, msg="success", data={ + "ragflow_token": token.ragflow_token, + }) diff --git a/app/models/token_model.py b/app/models/token_model.py index 6ab8d56..764d999 100644 --- a/app/models/token_model.py +++ b/app/models/token_model.py @@ -1,6 +1,7 @@ from datetime import datetime +from typing import Type -from sqlalchemy import Column, Integer, String, DateTime, Text +from sqlalchemy import Column, Integer, DateTime, Text from sqlalchemy.orm import Session from app.models.base_model import Base @@ -49,3 +50,7 @@ except Exception as e: # 寮傚父澶勭悊 db.rollback() # 鍥炴粴浜嬪姟 + + +def get_token(db: Session, user_id: int) -> Type[TokenModel] | None: + return db.query(TokenModel).filter_by(user_id=user_id).first() -- Gitblit v1.8.0