from fastapi import APIRouter, Response from server.services.covers import covers router = APIRouter(prefix="/api/covers") @router.get("/{digest}") def cover(digest: str): try: data, media = covers.read(digest) except RuntimeError as exc: from fastapi import HTTPException raise HTTPException(status_code=404, detail=str(exc)) from exc return Response( content=data, media_type=media, headers={"Cache-Control": "public, max-age=31536000, immutable"}, )