/
DisVic
/
task-tracker
Обзор
Документация
Войти
/
DisVic
/
task-tracker
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
app/deps.py
26 строк
837 B
DisappearedVictory
code done
27 дек 2025, 13:32
27 дек 2025, 13:32
213e05e
Код
Авторство
О чём код?
from fastapi import Depends, HTTPException, status from fastapi.security import OAuth2PasswordBearer from sqlalchemy.orm import Session from app.db import SessionLocal from app.models import User from app.core.security import decode_token oauth2_scheme = OAuth2PasswordBearer(tokenUrl="/api/v1/auth/token") def get_db(): db = SessionLocal() try: yield db finally: db.close() def get_current_user(token: str = Depends(oauth2_scheme), db: Session = Depends(get_db)) -> User: try: email = decode_token(token) except Exception: raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="Invalid token") user = db.query(User).filter(User.email == email).one_or_none() if not user: raise HTTPException(status_code=401, detail="User not found") return user