Ошибка разбитого канала Python Websocket при отправке изображения в JSON - PullRequest
0 голосов
/ 16 октября 2018

Я пытаюсь отправить 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] Сломанный канал

Не могли бы вы, ребята, помочь мне с этим?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...