1.json不能直接传输二进制数据
json只能传递基本的数型(如:int,long,string等),但不能传递byte类型。
2.通过base64进行中间转换
base64编码
with open(imgname, 'rb') as img:
#读取二进制序列
data = img.read()
#b64编码,生成新的可字符化的二进制序列
bast64_data = base64.b64encode(data)
#字符串化,使用utf-8的方式解析二进制
bast64_str = str(bast64_e,'utf-8')
#json传递
base64解码
#将字符串重新编码为utf-8的二进制序列(该序列被b64编码过)
bast64_data = bast64_str.encode(encoding='utf-8')
#b64解码,获得原二进制序列
data = base64.b64decode(bast64_data)