parsers: Inline fp.read() of json.load in JSONParser

This enables upcoming inspection of the decoded data
on string level, prior to parsing JSON.
This commit is contained in:
Sebastian Pipping 2019-10-31 12:26:53 +01:00
parent 1b23543ed1
commit 3d10d82d0e

View File

@ -61,8 +61,8 @@ class JSONParser(BaseParser):
encoding = parser_context.get('encoding', settings.DEFAULT_CHARSET) encoding = parser_context.get('encoding', settings.DEFAULT_CHARSET)
try: try:
decoded_stream = codecs.getreader(encoding)(stream) decoded_string = codecs.getreader(encoding)(stream).read()
return json.load(decoded_stream, parse_constant=parse_constant) return json.loads(decoded_string, parse_constant=parse_constant)
except ValueError as exc: except ValueError as exc:
raise ParseError('JSON parse error - %s' % str(exc)) raise ParseError('JSON parse error - %s' % str(exc))