generated from pptx704/fastapi-template
32 lines
796 B
Python
32 lines
796 B
Python
from fastapi import APIRouter, Depends, status
|
|
from sqlalchemy.orm import Session
|
|
|
|
from app import database, schemas
|
|
from app.repositories import auth
|
|
from app.security import get_user
|
|
|
|
router = APIRouter(prefix="", tags=["auth"])
|
|
|
|
get_db = database.get_db
|
|
|
|
|
|
@router.post(
|
|
"/register",
|
|
response_model=schemas.BaseResponse,
|
|
status_code=status.HTTP_201_CREATED,
|
|
)
|
|
def register(
|
|
request: schemas.RegistrationRequest, db: Session = Depends(get_db)
|
|
):
|
|
return auth.register(request, db)
|
|
|
|
|
|
@router.post("/login", response_model=schemas.LoginResponse)
|
|
def login(request: schemas.LoginRequest, db: Session = Depends(get_db)):
|
|
return auth.login(request, db)
|
|
|
|
|
|
@router.get("/me", response_model=schemas.User)
|
|
def current_user(user: schemas.User = Depends(get_user)):
|
|
return user
|