Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用套接字和节点发送图像/视频_Javascript_Node.js_Sockets_Socket.io - Fatal编程技术网

Javascript 使用套接字和节点发送图像/视频

Javascript 使用套接字和节点发送图像/视频,javascript,node.js,sockets,socket.io,Javascript,Node.js,Sockets,Socket.io,我的应用程序需要一个部分供用户相互通信。为此,我使用套接字io。用于发送文本(作为字符串)。我使用utf-8,它工作得非常好 但是,当通过套接字发送图像或视频时,我该如何处理?我是否将图像或视频转换为二进制格式,并通过套接字发送?是的,有一个关于如何使用socket.io发送文件的示例: var fileReader = new FileReader(), slice = file.slice(0, 100000); fileReader.readAsArrayBuffer(sli

我的应用程序需要一个部分供用户相互通信。为此,我使用套接字io。用于发送文本(作为字符串)。我使用utf-8,它工作得非常好


但是,当通过套接字发送图像或视频时,我该如何处理?我是否将图像或视频转换为二进制格式,并通过套接字发送?

是的,有一个关于如何使用socket.io发送文件的示例:

var fileReader = new FileReader(), 
    slice = file.slice(0, 100000); 

fileReader.readAsArrayBuffer(slice); 
fileReader.onload = (evt) => {
    var arrayBuffer = fileReader.result; 
    socket.emit('slice upload', { 
        name: file.name, 
        type: file.type, 
        size: file.size, 
        data: arrayBuffer 
    }); 
}

有一个完整的教程,其中有一个示例,介绍如何使用socket.io发送文件并在服务器节点中接收文件。请遵循

是的,兄弟,这是对等应用程序的另一种方式,更简单吗?@EesaMunir是的,您可以使用webRTC。有一个框架可以帮助您完成项目。。。祝你好运,伙计。那么webRTC是否为您执行所有二进制读取和打开操作?@EesaMunir是的,但如果您想保存聊天历史记录,我建议您使用webSocket执行此操作,因为当用户发送消息时,它将被操作并保存在服务器(数据库)上。。。祝你好运:)