18 lines
567 B
Python
18 lines
567 B
Python
from fastapi import Request, Response
|
|
from ApiServices.TemplateService.endpoints.routes import get_safe_endpoint_urls
|
|
|
|
|
|
async def token_middleware(request: Request, call_next):
|
|
|
|
base_url = "/".join(request.url.path.split("/")[:3])
|
|
safe_endpoints = [_[0] for _ in get_safe_endpoint_urls()]
|
|
if base_url in safe_endpoints:
|
|
return await call_next(request)
|
|
|
|
token = request.headers.get("Authorization")
|
|
if not token:
|
|
return Response(content="Missing token", status_code=400)
|
|
|
|
response = await call_next(request)
|
|
return response
|