ruạṛ
from fastapi import Request, Response from app.auth_framework.AuthStrategy import AuthStrategy from typing import Optional # NOTE : Not Implemented Yet class JWTAuthStrategy(AuthStrategy): def __init__(self, secret: str, algorithm: str = "HS256"): self.secret = secret self.algorithm = algorithm async def authenticate(self, request: Request) -> Optional[Response]: auth_header = request.headers.get("Authorization") if not auth_header or not auth_header.startswith("Bearer "): return Response("Unauthorized", status_code=401, headers={"WWW-Authenticate": "Bearer"}) token = auth_header.split(" ")[1] # jwt.decode(token, self.secret, algorithms=[self.algorithm]) return Response("Token expired", status_code=401)
cải xoăn