diff options
author | Paul "LeoNerd" Evans <paul@matrix.org> | 2014-12-11 18:35:05 +0000 |
---|---|---|
committer | Paul "LeoNerd" Evans <paul@matrix.org> | 2014-12-11 18:35:05 +0000 |
commit | 0b700233737adfa3c6558e988822e7f9ee31ca39 (patch) | |
tree | eac8aff9fb9f58da245c9c3e7a80fa13ac5e1eb1 /synapse/http/server.py | |
parent | Merge remote-tracking branch 'origin' into typing_notifications (diff) | |
parent | Merge branch 'develop' of github.com:matrix-org/synapse into develop (diff) | |
download | synapse-0b700233737adfa3c6558e988822e7f9ee31ca39.tar.xz |
Merge branch 'develop' into typing_notifications
Diffstat (limited to 'synapse/http/server.py')
-rw-r--r-- | synapse/http/server.py | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/synapse/http/server.py b/synapse/http/server.py index 8024ff5bde..02277c4998 100644 --- a/synapse/http/server.py +++ b/synapse/http/server.py @@ -166,14 +166,10 @@ class JsonResource(HttpServer, resource.Resource): request) return - if not self._request_user_agent_is_curl(request): - json_bytes = encode_canonical_json(response_json_object) - else: - json_bytes = encode_pretty_printed_json(response_json_object) - # TODO: Only enable CORS for the requests that need it. - respond_with_json_bytes(request, code, json_bytes, send_cors=True, - response_code_message=response_code_message) + respond_with_json(request, code, response_json_object, send_cors=True, + response_code_message=response_code_message, + pretty_print=self._request_user_agent_is_curl) @staticmethod def _request_user_agent_is_curl(request): @@ -202,6 +198,17 @@ class RootRedirect(resource.Resource): return resource.Resource.getChild(self, name, request) +def respond_with_json(request, code, json_object, send_cors=False, + response_code_message=None, pretty_print=False): + if not pretty_print: + json_bytes = encode_pretty_printed_json(json_object) + else: + json_bytes = encode_canonical_json(json_object) + + return respond_with_json_bytes(request, code, json_bytes, send_cors, + response_code_message=response_code_message) + + def respond_with_json_bytes(request, code, json_bytes, send_cors=False, response_code_message=None): """Sends encoded JSON in response to the given request. |