我正在尝试保存一个涉及API调用的表单,但它会向我抛出一个错误
“字节”类型的对象不可JSON序列化。
当我调用data = json.dump(dump)时,它会引发以下错误
def getAttributes(self, jsonObj=False):
attributes = vars(self)
data = {var: value for var, value in attributes.items() if not var.startswith('_')}
print(data, "data")
if jsonObj:
import json
data = json.dumps(data)
return data
p.s .:在打印数据语句中,它返回了我一个字典。
答案 0 :(得分:1)
只需更改此行
data = json.dumps(data)
到
json.dumps((data).encode("utf-8"))
答案 1 :(得分:0)
想通了!!只需将return语句更改为 返回json.dumps(data).encode(“ utf-8”)
答案 2 :(得分:0)
我猜您的value
变量是字节序列,而不是字符串。您需要将其转换为Unicode。
data = {var: value.decode("utf-8") for var, value in attributes.items() if not var.startswith('_')}