[FIX] P3: JSON is an object<->text encoding
It doesn't load bytes, and it doesn't dump to bytes.
This commit is contained in:
@@ -499,13 +499,12 @@ class Slide(models.Model):
|
||||
try:
|
||||
response = requests.get(base_url, params=data)
|
||||
response.raise_for_status()
|
||||
content = response.content
|
||||
if content_type == 'json':
|
||||
result['values'] = json.loads(content)
|
||||
result['values'] = response.json()
|
||||
elif content_type in ('image', 'pdf'):
|
||||
result['values'] = base64.b64encode(content)
|
||||
result['values'] = base64.b64encode(response.content)
|
||||
else:
|
||||
result['values'] = content
|
||||
result['values'] = response.content
|
||||
except requests.exceptions.HTTPError as e:
|
||||
result['error'] = e.response.content
|
||||
except requests.exceptions.ConnectionError as e:
|
||||
|
||||
@@ -965,7 +965,7 @@ class test_o2m_multiple(ImporterCase):
|
||||
|
||||
class test_realworld(common.TransactionCase):
|
||||
def test_bigfile(self):
|
||||
data = json.loads(pkgutil.get_data(self.__module__, 'contacts_big.json'))
|
||||
data = json.loads(pkgutil.get_data(self.__module__, 'contacts_big.json').decode('utf-8'))
|
||||
result = self.env['res.partner'].load(['name', 'mobile', 'email', 'image'], data)
|
||||
self.assertFalse(result['messages'])
|
||||
self.assertEqual(len(result['ids']), len(data))
|
||||
@@ -973,7 +973,7 @@ class test_realworld(common.TransactionCase):
|
||||
def test_backlink(self):
|
||||
fnames = ["name", "type", "street", "city", "country_id", "category_id",
|
||||
"supplier", "customer", "is_company", "parent_id"]
|
||||
data = json.loads(pkgutil.get_data(self.__module__, 'contacts.json'))
|
||||
data = json.loads(pkgutil.get_data(self.__module__, 'contacts.json').decode('utf-8'))
|
||||
result = self.env['res.partner'].load(fnames, data)
|
||||
self.assertFalse(result['messages'])
|
||||
self.assertEqual(len(result['ids']), len(data))
|
||||
|
||||
+1
-1
@@ -597,7 +597,7 @@ class JsonRequest(WebRequest):
|
||||
request = self.session.pop('jsonp_request_%s' % (request_id,), '{}')
|
||||
else:
|
||||
# regular jsonrpc2
|
||||
request = self.httprequest.stream.read()
|
||||
request = self.httprequest.stream.read().decode(self.httprequest.charset)
|
||||
|
||||
# Read POST content or POST Form Data named "request"
|
||||
try:
|
||||
|
||||
Reference in New Issue
Block a user