From 878fbbf5df5b23101b992f99a034dea098085f76 Mon Sep 17 00:00:00 2001 From: Valentin CZERYBA Date: Wed, 18 Oct 2023 23:59:18 +0200 Subject: [PATCH] cors added and jwt --- app/main.py | 14 ++++++++++++++ app/routers/token.py | 12 +++++++++--- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/app/main.py b/app/main.py index 55aaf51..8e8d558 100644 --- a/app/main.py +++ b/app/main.py @@ -1,4 +1,5 @@ from fastapi import FastAPI +from fastapi.middleware.cors import CORSMiddleware from .routers import users, token, mail from .dependencies import user_add @@ -7,6 +8,19 @@ import os app = FastAPI() +origins = [ + "http://localhost:8084", +] + +app.add_middleware( + CORSMiddleware, + allow_origins=origins, + allow_credentials=True, + allow_methods=["*"], + allow_headers=["*"], +) + + app.include_router(users.router) app.include_router(token.router) app.include_router(mail.router) diff --git a/app/routers/token.py b/app/routers/token.py index 4c362fb..d8eae4c 100644 --- a/app/routers/token.py +++ b/app/routers/token.py @@ -4,8 +4,8 @@ from typing import Annotated from fastapi import Depends, FastAPI, HTTPException, status, APIRouter from fastapi.responses import JSONResponse from fastapi.security import OAuth2PasswordBearer, OAuth2PasswordRequestForm -from ..dependencies import users_token -from ..models import token +from ..dependencies import users_token, permissions_checker +from ..models import token, users router = APIRouter() ACCESS_TOKEN_EXPIRE_MINUTES = 30 @@ -28,4 +28,10 @@ async def login_for_access_token( content = {"message": "Access token generated"} response = JSONResponse(content=content) response.set_cookie(key="jwt", value=access_token) - return response \ No newline at end of file + return response + +@router.get("/token",tags=["token"]) +async def check_token(current_user: Annotated[users.User, Depends(users_token.get_current_active_user)], authorize: Annotated[bool, Depends(permissions_checker.PermissionChecker(roles=["Admin", "User"]))]): + content = {"message": "Check token"} + response = JSONResponse(content=content) + return response \ No newline at end of file