fix: compatibility for Python <3.6

This commit is contained in:
debugtalk
2019-12-18 16:54:20 +08:00
parent 8ec9e4b4b7
commit dccc04b8d7

View File

@@ -123,6 +123,13 @@ def dumps_json(value):
return json.dumps(value, indent=2, ensure_ascii=False)
def detect_encoding(value):
try:
return json.detect_encoding(value)
except AttributeError:
return "utf-8"
def __stringify_request(request_data):
""" stringfy HTTP request data
@@ -156,7 +163,7 @@ def __stringify_request(request_data):
elif isinstance(value, bytes):
try:
encoding = json.detect_encoding(value)
encoding = detect_encoding(value)
value = value.decode(encoding)
if key == "body":
try:
@@ -215,7 +222,7 @@ def __stringify_response(response_data):
try:
encoding = response_data.get("encoding")
if not encoding or encoding == "None":
encoding = json.detect_encoding(value)
encoding = detect_encoding(value)
if key == "body" and "image" in response_data["content_type"]:
# display image