35 lines
796 B
Python
35 lines
796 B
Python
|
from flask import jsonify
|
||
|
from jsonschema import ValidationError
|
||
|
|
||
|
|
||
|
class KratosError(Exception):
|
||
|
pass
|
||
|
|
||
|
|
||
|
class BadRequest(Exception):
|
||
|
pass
|
||
|
|
||
|
|
||
|
def bad_request_error(e):
|
||
|
message = e.args[0] if e.args else "Bad request to the server."
|
||
|
return jsonify({"errorMessage": message})
|
||
|
|
||
|
|
||
|
def validation_error(e):
|
||
|
original_error = e.description
|
||
|
return (
|
||
|
jsonify({"errorMessage": "{} is not valid.".format(original_error.path[0])}),
|
||
|
400,
|
||
|
)
|
||
|
|
||
|
|
||
|
def kratos_error(e):
|
||
|
message = e.args[0] if e.args else "Failed to contant Kratos."
|
||
|
status_code = e.args[1] if e.args else 500
|
||
|
return jsonify({"errorMessage": message}), status_code
|
||
|
|
||
|
|
||
|
def global_error(e):
|
||
|
message = e.args[0] if e.args else "Something went wrong."
|
||
|
return jsonify({"errorMessage": message})
|