mirror of
https://github.com/zulip/zulip.git
synced 2025-11-02 13:03:29 +00:00
python: Migrate most json_error => JsonableError.
JsonableError has two major benefits over json_error: * It can be raised from anywhere in the codebase, rather than being a return value, which is much more convenient for refactoring, as one doesn't potentially need to change error handling style when extracting a bit of view code to a function. * It is guaranteed to contain the `code` property, which is helpful for API consistency. Various stragglers are not updated because JsonableError requires subclassing in order to specify custom data or HTTP status codes.
This commit is contained in:
@@ -4,8 +4,9 @@ from django.http import HttpRequest, HttpResponse
|
||||
from django.utils.translation import gettext as _
|
||||
|
||||
from zerver.decorator import webhook_view
|
||||
from zerver.lib.exceptions import JsonableError
|
||||
from zerver.lib.request import REQ, has_request_variables
|
||||
from zerver.lib.response import json_error, json_success
|
||||
from zerver.lib.response import json_success
|
||||
from zerver.lib.webhooks.common import check_send_webhook_message
|
||||
from zerver.models import UserProfile
|
||||
|
||||
@@ -143,7 +144,7 @@ def api_front_webhook(
|
||||
|
||||
event = payload["type"]
|
||||
if event not in EVENT_FUNCTION_MAPPER:
|
||||
return json_error(_("Unknown webhook request"))
|
||||
raise JsonableError(_("Unknown webhook request"))
|
||||
|
||||
topic = payload["conversation"]["id"]
|
||||
body = get_body_based_on_event(event)(payload)
|
||||
|
||||
Reference in New Issue
Block a user