fooder-api/fooder/view/token.py

28 lines
743 B
Python
Raw Permalink Normal View History

2024-08-04 16:17:16 +02:00
from typing import Annotated
2023-04-01 16:19:12 +02:00
from fastapi import APIRouter, Depends, Request
from fastapi.security import OAuth2PasswordRequestForm
2024-08-04 16:17:16 +02:00
from ..controller.token import CreateToken, RefreshToken
from ..model.token import RefreshTokenPayload, Token
2023-04-01 16:19:12 +02:00
router = APIRouter(tags=["token"])
2023-04-01 20:23:04 +02:00
@router.post("", response_model=Token)
2023-04-01 16:19:12 +02:00
async def create_token(
request: Request,
data: Annotated[OAuth2PasswordRequestForm, Depends()],
controller: CreateToken = Depends(CreateToken),
):
return await controller.call(data)
2023-04-02 14:38:22 +02:00
@router.post("/refresh", response_model=Token)
async def refresh_token(
request: Request,
data: RefreshTokenPayload,
controller: RefreshToken = Depends(RefreshToken),
):
return await controller.call(data)