Spaces:
Running
Running
| from fastapi import Request, HTTPException, Depends | |
| import jwt | |
| from env import config | |
| async def authenticate(request: Request): | |
| auth_header = request.headers.get("Authorization") | |
| if not auth_header or not auth_header.startswith("Bearer"): | |
| raise HTTPException(status_code=401, detail="token_invalid") | |
| token = auth_header.split("Bearer")[1].strip() | |
| payload = jwt.decode(token, config["jwt"]["secret_key"], algorithm=config["jwt"]["algorithm"]) | |
| server_id = payload.get("id") | |
| if server_id != config["app"]["server_id"]: | |
| raise HTTPException(status_code=401, detail="token_invalid") | |