我正在尝试将包含从openCV cv2.videoCapture()
获取的编码图像的JSON发送到websocket。
起初,我仅使用base64.b64encode()
进行了操作,但出现“无法序列化JSON”错误。
然后我发现the correct way to send an image over json
但是当我尝试执行此操作时,出现“管道破裂错误”
这是我在客户端的代码:
encoded_img = base64.b64encode(gbr)
new_json = {'probability':json_return['probability'],'name':json_return['name'],'image':encoded_img.decode('utf8')}
payload = json.dumps(new_json)
ws.send(payload)
服务器端:
import asyncio
import websockets
async def hello(websocket, path):
name = await websocket.recv()
print('Received', name)
await websocket.send(name)
print('sent back to client')
start_server = websockets.serve(hello, '0.0.0.0', 5051)
asyncio.get_event_loop().run_until_complete(start_server)
asyncio.get_event_loop().run_forever()
BrokenPipeError:[Errno 32]管道损坏
你们能帮我吗?