Don't expose raw exceptions to client

This commit is contained in:
Donkie
2023-05-14 10:01:11 +02:00
parent 8b4ba1f1c5
commit 24083b42f9
3 changed files with 22 additions and 8 deletions

View File

@@ -1,5 +1,6 @@
"""Spool related endpoints."""
import logging
from datetime import datetime
from typing import Annotated, Optional
@@ -15,6 +16,8 @@ from spoolman.database import spool
from spoolman.database.database import get_db_session
from spoolman.exceptions import ItemCreateError
logger = logging.getLogger(__name__)
router = APIRouter(
prefix="/spool",
tags=["spool"],
@@ -166,10 +169,11 @@ async def create( # noqa: ANN201
comment=body.comment,
)
return Spool.from_db(db_item)
except ItemCreateError as exc:
except ItemCreateError:
logger.exception("Failed to create spool.")
return JSONResponse(
status_code=400,
content={"message": str(exc)},
content={"message": "Failed to create spool, see server logs for more information."},
)
@@ -211,10 +215,11 @@ async def update( # noqa: ANN201
spool_id=spool_id,
data=patch_data,
)
except ItemCreateError as exc:
except ItemCreateError:
logger.exception("Failed to update spool.")
return JSONResponse(
status_code=400,
content={"message": str(exc)},
content={"message": "Failed to update spool, see server logs for more information."},
)
return Spool.from_db(db_item)