这可能是一个Servlet的问题或HTML5的问题,这取决于溶液变出什么是... :)
我有服务了音频的短片然后将其在HTML5音频元素拿起(Tomcat)的Servlet的。 音频可以正常播放,但在某些浏览器只有一次(这样企图“倒带”或重放音频不工作,那么)。 我怀疑这是因为我的servlet没有报告其支持范围请求:我注意到,考虑到同一台服务器上一个静态的音频文件,Apache的添加HTTP“范围单元”响应报头,和重放然后在文件中这样的作品案例。 所以我假定上的浏览器在那里我遇到的问题,以重播文件时,浏览器会发出HTTP内容范围请求,而不是要么缓存整个文件或重新请求整个文件。 (在Safari上至少,从重放我的servlet服务的音频工作正常:我猜是因为Safari浏览器缓存的整个音频。)
所以我的问题:
有没有在HTML的方式来请求浏览器缓存上,以便使回放而不是服务器需要一定支持范围请求播放整个音频文件?
如果没有,没有任何人有响应的范围从一个Servlet的请求的经验吗? 我假定这只是(一)响应发送“范围单元”响应代码最初的请求,然后(b)寻找出相关的HTTP请求头(“内容范围?”)的情况下,(我猜这就是他们如何在后续请求处理的?),并只提供音频的相关部分? 是否有任何陷阱,我应该知道的?