首页 > 解决方案 > 有没有办法通过socket.io向客户端发送图像?

问题描述

我想制作一个网络应用程序,您可以在其中实时发送图像。有什么办法吗?任何视频链接或文档链接都会非常有帮助。

谢谢你

标签: socket.io

解决方案


正如官网所说,socket.io 可以处理 blob 对象。

从 1.0 开始,可以来回发送任何 blob:图像、音频、视频。

例如,您可以从 socket.io 服务器端推送文档,如下所示。从客户端推送到服务器端与此几乎相同。

服务器端

const filePath = "./img.jpg"
const imgBinary = fs.readFileSync(filePath)
socket.emit("img",imgBinary)

客户端

socket.on("img", imgBinary => {
    const blob = new Blob([imgBinary])
    const imgBlobUrl = window.URL.createObjectURL(blob)
    // Insert imgBlobUrl into img.src or something
});

推荐阅读