aboutsummaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorGravatar jesopo2018-10-06 09:22:11 +0100
committerGravatar jesopo2018-10-06 09:23:50 +0100
commitc3ace4be2ed231360dea42016ab1c959897371be (patch)
treea95eb04db19e098f4cccaf85463611251edde905 /modules
parentTypo, add missing " (diff)
signature
Return 500 when an exception is thrown, never try to .encode None
Diffstat (limited to 'modules')
-rw-r--r--modules/rest_api.py14
1 files changed, 9 insertions, 5 deletions
diff --git a/modules/rest_api.py b/modules/rest_api.py
index 3b6d515a..d60a874b 100644
--- a/modules/rest_api.py
+++ b/modules/rest_api.py
@@ -27,12 +27,16 @@ class Handler(http.server.BaseHTTPRequestHandler):
code = 401
else:
if path.startswith("/api/"):
- response = _events.on("api").on(method).on(endpoint
- ).call_for_result(params=params, path=args, data=data)
+ try:
+ event_response = _events.on("api").on(method).on(
+ endpoint).call_unsafe_for_result(
+ params=params, path=args, data=data)
+ except:
+ code = 500
- if response:
- response = json.dumps(response, sort_keys=True,
- indent=4)
+ if event_response:
+ response = json.dumps(event_response,
+ sort_keys=True, indent=4)
code = 200
self.send_response(code)