javascript - 如何读出 javascript 中的前 4 个字节,将其转换为整数并删除其余部分?

标签 javascript html arrays

我需要通过互联网将网络摄像头数据从一个浏览器传输到另一个浏览器。

网络摄像头显示在 HTML5 canvas 中。然后我得到它的 dataUrl,并将它变成一个 blob。然后我将这个 blob 发送到我的服务器。

据我了解,blob 本质上是一个字节数组。我已经在服务器端将它转换为字节数组,它与浏览器中的 blob.size 具有相同的长度,所以看起来不错。我需要向它添加一个发件人 ID,因此我将一个整数转换为 4 字节 的数组并将其添加到字节数组的前面。

现在我需要将这个修改后的 blob 发送到其他浏览器。这就是我感到困惑的地方。

  1. 如何在 javascript 中读出前 4 个字节并将其再次转换为整数?
  2. 我该如何切掉剩下的团 block ?

最佳答案

您可以使用 Blob.slice() 方法来获取字节。
请参阅文档:https://developer.mozilla.org/en-US/docs/Web/API/Blob.slice

1)

var bytes = blob.slice(0,4);

2)

var arrayOfBytes = [];
for(var i=0;i<blob.size/4;i++){
    arrayOfBytes[i] = blob.slice(i*4,4+(i*4));
}

注意:我没有测试过!

关于javascript - 如何读出 javascript 中的前 4 个字节,将其转换为整数并删除其余部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23140007/

相关文章:

javascript - 重构遗留的基于 mixin 的类层次结构

javascript - 使用Cesium JS更改标签的偏移量

javascript - 如何在processing.js函数外部访问processing.js 'width'和 'height'

html - 初学者关于 CSS 的问题

javascript - 生成器可以使用异步函数吗?

javascript - createElement 方法可以应用于除文档之外的任何节点吗?

javascript - 如何在CSS中用文本和图像制作带边框的正方形

javascript - 如何使数组中收集的循环值在循环外部可用以供将来使用

c++ - 如何从 cv::Vec3f 转换为 float 类型?

arrays - 为什么这个 for 循环不处理数组的所有元素?