二进制音频视频转换为视频流播放及图片的显示
需求:因为视频,音频,图片没有实体文件的存储,后台返过来,都是二进制,即视频及音频流播放,图片可以返回base64进行展示…
Blob对象:二进制类型的对象
看到一篇很好文章,讲的是blob:JS中的Blob对象
ArrayBuffer:它是用来表示通用的、固定长度的原始二进制数据缓冲区,它是一个字节数组,不能直接操作,可以通过类型数组对象来操作它~~
处理之后的路径在下方==
blob:http://localhost:8080/766d***********4fdf-914a-5*******

请求数据
let parmise = {// 这里是请求参数};const xhr = new XMLHttpRequest();const _that = this;xhr.open("post", PATH + "/url(请求路径)", true);// 请求类型 arraybuffer,这里一定是arraybufferxhr.responseType = "arraybuffer";xhr.setRequestHeader("Content-Type", "application/json");xhr.onload = function() {if (xhr.status === 200 || xhr.status === 304) {console.log(xhr.response); // 二进制数据缓冲区let blob = new Blob([xhr.response], { type: "video/*" });_that.videoUrl = URL.createObjectURL(blob); // 获取URL}};xhr.send(JSON.stringify(parmise));
昨天在讨论blob加密视频安全的时候 说的信誓旦旦,今天查阅资料,打脸啊,分享两篇链接
视频网站中video标签中的视频资源以blob:http呈现的探索
从blob协议的加密视频地址下载视频——亲测真实解决
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
