通过WebRTC数据通道发送带有元数据的文件块
Sending a file chunk WITH meta data over a WebRTC Data Channel
我有一个文件分块操作,通过文件阅读器将文件分成通过readAsArrayBuffer
读取的片。我想发送这些块在一个时间在我的数据通道与元信息附加(一个块id,例如)。如:
// Build chunk wrapper
var block = {
chunkId: id,
data: buffer
};
// Send the chunk to peer
channel.send(JSON.stringify(block));
现在,当我发送上述数据时,ArrayBuffer buffer
中的数据丢失了。我想强调一下,通过我的数据通道发送数据没有任何问题。
我想知道我如何发送数据与相关的元信息,以便文件块可以在另一边以正确的顺序重新组装?
我是否需要做一些像做一个ArrayBuffer与两个子数组,一个与元信息,另一个与实际数据或有一个更简单的方法?
有很多方法可以解决这个问题,但基本上你需要序列化,编码和反序列化,解码你的数据。
如果你想把你的元数据和数据一起发送,你需要将它们序列化为uint8array或字符串,并在接收端进行反向操作。例如,sharetest使用TLV协议:https://github.com/Peer5/ShareFest/blob/master/core/protocol/BinaryProtocol.js
相关文章:
- 如何使用.log数据文件显示EXT-js网格
- 访问Twilio短信元数据
- Firebase-返回用户uid并将用户元数据值设置为不同的节点
- Chart.js2.X中的条形值-数据集元数据未定义
- E4X中是否有一种方法可以将基元数据类型的XMLList转换为类似于Array.join()的Array
- 获取javascript中的元数据属性
- 从 Google 云端硬盘请求文件元数据时缺少“downloadUrl”参数
- 如何在上传前在浏览器中去除图像元数据(javascript)
- Extjs 4,如何使用单个Json文件为多个动态网格发送多个元数据
- 从S3获取视频文件元数据
- Cordova 的文件 API 中的元数据
- 使用 Web 应用程序访问本地文件系统并提取文件元数据
- 将包含内容和元数据的文件上传到谷歌文档会返回400无效/错误请求
- 获取mp3文件元数据
- 使用php提取文件的元数据
- 统计GridFS中包含元数据的文件
- 通过WebRTC数据通道发送带有元数据的文件块
- 在NodeJS中使用gridfs通过元数据删除文件
- 谷歌驱动器文件元数据读取
- 用Javascript从. epub文件中获取元数据