浏览器不支持html5 video标签,safari video标签不能播放

  浏览器不支持html5 video标签,safari video标签不能播放

  1.先是从前端的角度去考虑,如何让旅行队浏览器兼容视频,并支持播放(未找到解决的方法)。

  2.经多次查找网上信息,发现使用后台能解决该问题,解决点在超文本传送协议协议的响应头里面(接受范围).

  3 .狩猎浏览器,在打开视频的时候,先是发送一个请求探测文件的大小,之后再多次发送请求分段获取数据流的数据(个人理解大概是分段下载接受范围).

  4.想要解决这种问题要考虑两个方面:

  a.需要根据请求内容的不同做出不同的响应,第一次探测请求需要返回200,后面的请求需要返回206和具体数据

  乙。内容类型必须设置为视频/mp4

  5.具体代码

  这里已经封装好了,直接拿过来使用就好的了。

  私有void发送视频(http servlet请求请求,HttpServletResponse响应,文件文件,字符串文件名)抛出FileNotFoundException,io exception {随机存取文件random File=new random access File(File, r );//只读模式长内容长度=随机文件。长度();字符串范围=请求。获取标题(“范围”);int start=0,end=0;如果(范围!=空范围。开头为( bytes=){ String[]values=range。split(=)[1].拆分(-);start=整数。parse int(values[0]);如果(值。长度1){ end=整数。parse int(values[1]);} } int请求大小=0;如果(结束!=0 end start){请求大小=end-start 1;} else { requestSize=Integer .MAX _ VALUE}响应。set content type( video/MP4 );回应。设置标题(“接受范围”,“字节”).response.setHeader(ETag ,文件名);response.setHeader(上次修改时间,新日期()。toString());//第一次请求只返回内容长度来让客户端请求多次实际数据if(range==null){ response。set header(“Content-length”,内容长度“”);}else{ //以后的多次以断点续传的方式来返回视频数据回应。设置状态(http servlet响应.SC _ PARTIAL _ CONTENT);//206长请求开始=0,请求结束=0;字符串[]范围=范围。拆分(=);如果(范围。length 1){ String[]rangeDatas=ranges[1].拆分(-);请求开始=整数。parse int(range datas[0]);如果(范围数据。长度1){请求结束=整数。parse int(range datas[1]);} }长长度=0;if(请求结束0){ length=请求结束-请求开始1;回应。set header( Content-length , length);回应。set头( Content-Range , bytes 请求开始-请求结束/ contentLength);} else { length=内容长度-请求开始;回应。set header( Content-length , length);回应。set header( Content-Range , bytes request start -(contentLength-1)/ contentLength);} } ServletOutputStream out=response。获取输出流();int needSize=request size random file。seek(开始);while(needSize 0){ byte[]buffer=new byte[4096];int len=随机文件。读取(缓冲区);if(需要大小缓冲区。长度){ out。write(buffer,0,needSize);} else { out.write(buffer,0,len);if(len缓冲区。长度){ break} }需要大小-=缓冲区。长度;}随机文件。close();出去。close();}总结

  关于解决html5中的视频标签在ios系统中无法播放的问题的这篇文章到此为止。更多html5中的视频标签在ios系统中无法播放的相关内容,请搜索之前的文章或者继续浏览下面的相关文章。希望你以后能支持我!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: