From 626a93a46cbf512127ac62c1de963e6456dfe044 Mon Sep 17 00:00:00 2001 From: Tiago vasconcelos Date: Wed, 15 Jun 2022 16:20:20 +0100 Subject: [PATCH] add json response for basic error --- lnbits/app.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/lnbits/app.py b/lnbits/app.py index 1fff4847..8c707a8b 100644 --- a/lnbits/app.py +++ b/lnbits/app.py @@ -62,7 +62,7 @@ def create_app(config_object="lnbits.settings") -> FastAPI: ): # Only the browser sends "text/html" request # not fail proof, but everything else get's a JSON response - + if "text/html" in request.headers["accept"]: return template_renderer().TemplateResponse( "error.html", @@ -177,6 +177,13 @@ def register_exception_handlers(app: FastAPI): etype, _, tb = sys.exc_info() traceback.print_exception(etype, err, tb) exc = traceback.format_exc() - return template_renderer().TemplateResponse( - "error.html", {"request": request, "err": err} + + if "text/html" in request.headers["accept"]: + return template_renderer().TemplateResponse( + "error.html", {"request": request, "err": err} + ) + + return JSONResponse( + status_code=HTTPStatus.NO_CONTENT, + content={"detail": exc.errors()}, )