mini-rbac/backend/core/middleware.py

29 lines
795 B
Python
Raw Normal View History

2022-09-11 10:34:18 +00:00
from fastapi.middleware import Middleware
from fastapi.middleware.cors import CORSMiddleware
from starlette.middleware.base import BaseHTTPMiddleware
from core.log import logger
class CustomRequestLogMiddleware(BaseHTTPMiddleware):
async def dispatch(self, request, call_next):
logger.info(
f"Client: {request.client} Method: {request.method} "
f"Path: {request.url} Headers: {request.headers}"
)
# python-multipart == await request.form()
response = await call_next(request)
return response
2022-09-11 10:34:18 +00:00
middlewares = [
Middleware(CustomRequestLogMiddleware),
2022-09-11 10:34:18 +00:00
Middleware(
CORSMiddleware,
allow_origins=["*"],
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
),
2022-09-11 10:34:18 +00:00
]