17 lines
550 B
Python
17 lines
550 B
Python
from fastapi import APIRouter, Depends, HTTPException
|
|
from sqlalchemy.orm import Session
|
|
|
|
from app.auth.dto import Credentials, TokenModel
|
|
from app.auth.service import authenticate
|
|
from app.db import get_db
|
|
|
|
router = APIRouter()
|
|
|
|
|
|
@router.post("/auth", status_code=200, response_model=TokenModel)
|
|
def issue_access_token(credentials: Credentials, db: Session = Depends(get_db)) -> TokenModel:
|
|
token = authenticate(credentials, db)
|
|
if token is None:
|
|
raise HTTPException(status_code=401)
|
|
else:
|
|
return TokenModel(token=token)
|