use dependency injection to allow alternative json parser or encoder
This commit is contained in:
parent
329ebf6a5d
commit
1d719252cb
|
@ -69,10 +69,10 @@ class Request(dict):
|
|||
self.stream = None
|
||||
|
||||
@property
|
||||
def json(self):
|
||||
def json(self, loads=json_loads):
|
||||
if self.parsed_json is None:
|
||||
try:
|
||||
self.parsed_json = json_loads(self.body)
|
||||
self.parsed_json = loads(self.body)
|
||||
except Exception:
|
||||
if not self.body:
|
||||
return None
|
||||
|
|
|
@ -237,7 +237,8 @@ class HTTPResponse(BaseHTTPResponse):
|
|||
|
||||
|
||||
def json(body, status=200, headers=None,
|
||||
content_type="application/json", **kwargs):
|
||||
content_type="application/json", dumps=json_dumps,
|
||||
**kwargs):
|
||||
"""
|
||||
Returns response object with body in json format.
|
||||
|
||||
|
@ -246,7 +247,7 @@ def json(body, status=200, headers=None,
|
|||
:param headers: Custom Headers.
|
||||
:param kwargs: Remaining arguments that are passed to the json encoder.
|
||||
"""
|
||||
return HTTPResponse(json_dumps(body, **kwargs), headers=headers,
|
||||
return HTTPResponse(dumps(body, **kwargs), headers=headers,
|
||||
status=status, content_type=content_type)
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user