json传递byte数组
时间: 2023-06-30 21:03:18 浏览: 278
json转化数组
5星 · 资源好评率100%
在 JSON 中传递二进制数据通常需要将其编码为 Base64 字符串,然后将其作为 JSON 对象的属性传递。在接收方,需要将 Base64 字符串解码为原始的二进制数据。
以下是一个示例,假设要传递一个 byte 数组:
```python
import json
import base64
# 将 byte 数组编码为 Base64 字符串
data = b'\x00\x01\x02\x03'
base64_data = base64.b64encode(data).decode('utf-8')
# 创建包含 Base64 字符串的 JSON 对象
json_data = {'data': base64_data}
# 将 JSON 对象转换为字符串
json_str = json.dumps(json_data)
# 在接收方解析 JSON 字符串并解码 Base64 字符串
parsed_json = json.loads(json_str)
received_base64 = parsed_json['data']
received_data = base64.b64decode(received_base64)
print(received_data) # b'\x00\x01\x02\x03'
```
请注意,在此示例中,我们使用 `base64.b64encode` 和 `base64.b64decode` 函数对二进制数据进行编码和解码。确保在使用这些函数时指定正确的编码(例如 `'utf-8'`)。
阅读全文