video标签播放视频不能拖动进度条

因为你的video的src不是直接使用视频文件的地址,而是通过后台接口返回文件流,后台返回流的时候没为response的header设置一些参数,否则会在部分浏览器有问题

String rangeString = request.getHeader("Range");//如果是video标签发起的请求就不会为null

long range = Long.valueOf(rangeString.substring(rangeString.indexOf("=") + 1, rangeString.indexOf("-")));

response.setHeader("Content-Type", "video/mp4");

response.setHeader("content-disposition", "attachment;filename=" + URLEncoder.encode("视频文件名称.mp4" , "UTF-8"));

response.setContentLength(10000);//10000是视频文件的大小,上传文件时都会有这些参数的

response.setHeader("Content-Range", String.valueOf(range + (10000-1)));//拖动进度条时的断点,其中10000是上面的视频文件大小,改成你的就好

response.setHeader("Accept-Ranges", "bytes");

response.setHeader("Etag", "W/"9767057-1323779115364"");//上传文件时都会有这些参数的

 

// 注意:如果是要下载视频那 Content-Range 就不要配置了,不然会下载失败

 

参考:https://www.cnblogs.com/frankltf/p/12588333.html

posted @ 2021-08-04 16:20  秦笑  阅读(2149)  评论(0编辑  收藏  举报