Flask-SocketIO发送图像

时间:2018-11-20 19:11:25

标签: python-3.x flask flask-socketio

我目前正在研究一个使用 Flask-SocketIO 通过互联网发送内容的项目,但是遇到了这个问题。

问题:

有什么方法可以在 Flask-SocketIO 中发送图像?我做了一些谷歌搜索,但对我却没有运气。

1 个答案:

答案 0 :(得分:3)

Socket.IO是与数据无关的协议,因此您可以发送任何类型的信息。文本和二进制有效负载均受支持。

如果要从服务器发送图像,可以执行以下操作:

with open('my_image_file.jpg', 'rb') as f:
    image_data = f.read()
emit('my-image-event', {'image_data': image_data})

客户端将必须知道您正在发送jpeg数据,Socket.IO协议中没有任何内容可以使发送图像不同于发送文本或其他数据格式。

如果使用JavaScript客户端,则将以字节数组形式获取数据。其他客户端可能会为此数据选择最合适的二进制表示形式。