Module routers.auth
Endpoints related to security endpoints
Expand source code
"""Endpoints related to security endpoints"""
from fastapi import Depends, APIRouter
from fastapi.security import OAuth2PasswordRequestForm
from models.auth import JWTToken
from security.auth import auth_user, create_access_token
from settings import AuthSettings
router = APIRouter()
@router.post('/token', response_model=JWTToken)
async def token_login(form_data: OAuth2PasswordRequestForm = Depends()):
user = await auth_user(form_data.username, form_data.password)
token_data = {'sub': user.email}
return JWTToken(access_token=create_access_token(token_data, AuthSettings().jwt_expire_minutes))
Functions
async def token_login(form_data: fastapi.security.oauth2.OAuth2PasswordRequestForm = Depends(NoneType))
-
Expand source code
@router.post('/token', response_model=JWTToken) async def token_login(form_data: OAuth2PasswordRequestForm = Depends()): user = await auth_user(form_data.username, form_data.password) token_data = {'sub': user.email} return JWTToken(access_token=create_access_token(token_data, AuthSettings().jwt_expire_minutes))