Skip to content

Commit

Permalink
feat: add json-friendly errors
Browse files Browse the repository at this point in the history
  • Loading branch information
michaelfromyeg committed Jan 12, 2024
1 parent 440d0fd commit e6d9a29
Showing 1 changed file with 33 additions and 0 deletions.
33 changes: 33 additions & 0 deletions georeal/server.py
Original file line number Diff line number Diff line change
Expand Up @@ -210,6 +210,39 @@ def get_image(filename: str) -> tuple[Response, int]:
return send_file(image_path, mimetype="image/jpeg"), 200


@app.errorhandler(400)
def bad_request(error) -> tuple[Response, int]:
logger.error("Got 400 error: %s", error)

return jsonify(
{
"error": "Bad Request",
"message": "The server could not understand the request due to invalid syntax.",
}
), 400


@app.errorhandler(404)
def not_found(error) -> tuple[Response, int]:
logger.warning("Got 404 for URL %s: %s", request.url, error)

return jsonify(
{"error": "Not Found", "message": "This resource does not exist"}
), 404


@app.errorhandler(500)
def internal_error(error) -> tuple[Response, int]:
logger.error("Got 500 error: %s", error)

return jsonify(
{
"error": "Internal Server Error",
"message": "An internal server error occurred",
}
), 500


if __name__ == "__main__":
logger.info(
"Starting GeoReal server on %s:%d... in debug=%s mode",
Expand Down

0 comments on commit e6d9a29

Please sign in to comment.