H5 qq浏览器video拦截处理

QQ浏览器中如果使用video标签,那么浏览器会将video劫持,使用他们浏览器自带的video,那么层级会很高,之前写在video上面的样式就会被覆盖,因此可以把视频url转成blod,那么就可以解决

从虎牙直播发现的,他们转为blod后,上面就可以加弹幕,滚动条等,因此发现了这个

 

一般让后端处理为blod二进制流,然后返回给前端

 

后端如果不处理前端搞也行,但是不太实际,弄不了鉴权,数据到了前端会被爬到数据

下面是前端处理的方式,前端处理的话,视频文件过大,会等待很长时间,因此建议还是后端处理

1、将video的视频链接转为blod

encryptionVideo(url) {
            return new Promise((resolve, reject) => {
                window.URL = window.URL || window.webkitURL;
                var xhr = new XMLHttpRequest();
                xhr.open('GET', url, true);
                xhr.responseType = 'blob';
                xhr.onload = function() {
                    if (this.status == 200) {
                        var blob = this.response;
                        var u = window.URL.createObjectURL(blob);
                        resolve(u);
                    }
                };
                xhr.send();
            });
        }

 

posted @ 2023-06-13 09:41  孙大猛子  阅读(994)  评论(0编辑  收藏  举报