Я пытаюсь отправить JSON, включающий в себя закодированное изображение, полученное из openCV cv2.videoCapture()
, в websocket.
Сначала я сделал это только с base64.b64encode()
, и у меня возникла ошибка «Не JSON serializable».
и тогда я нашел правильный способ отправки изображения через 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] Сломанный канал
Не могли бы вы, ребята, помочь мне с этим?