java respose输出mp4,使用safari读取通过servlet返回的MP4视频文件报错

有一问题求助各位大神,希望能提供解决思路!谢谢!问题现象:最近做的一个视频播放功能,前台使用的video.js播放框架播放mp4视频,后台使用java写的servlet接收请求的MP4文件名等参数,经过处理后读取播放本地的视频文件。经过验证后发现如果使用chrome,firefox等浏览器访问都没有问题,前台都可以播放,但是使用safari浏览器会读取文件失败,报文件不存在或网络链接有问题。包括使...
摘要由CSDN通过智能技术生成

有一问题求助各位大神,希望能提供解决思路!谢谢!

问题现象:

最近做的一个视频播放功能,前台使用的video.js播放框架播放mp4视频,后台使用java写的servlet接收请求的MP4文件名等参数,经过处理后读取播放本地的视频文件。经过验证后发现如果使用chrome,firefox等浏览器访问都没有问题,前台都可以播放,但是使用safari浏览器会读取文件失败,报文件不存在或网络链接有问题。包括使用ios和mac的safari都不行。初步认为和safari的版本无关。其中的servlet的处理主要就是获取本地mp4文件的fileinputstream,然后赋值给outputstream然后再response输出。

但是当我把视频源地址换成如http://xxx.com/yy.mp4格式的地址时,是可以直接播放的。

简单说,就是用safari的html5的video标签引用需要通过servlet处理的视频源,是无法播放对应视频的。

问题分析过程:

期间经过调试,网上搜索,貌似能查到的类似问题不太多。目前调试时,后台会报这个错,期间获取的range的值为“range="bytes=0-1"; 尝试过修改为chrome访问时的数据段的值继续执行还是不行。感觉是浏览器关闭了进程,服务器无法返回数据。但不知如何解决。

ClientAbortException: java.net.SocketException: Software caused connection abort: socket write error

at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:388)</

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值