zhangqian
2024-10-21 84e62e4041f66ba3bb70b1113be62acee5353cc0
获取第三方token接口
2个文件已修改
22 ■■■■ 已修改文件
app/api/auth.py 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/models/token_model.py 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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,
    })
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()