设为首页收藏本站

ZMX - IT技术交流论坛 - 无限Perfect,追求梦想 - itzmx.com

 找回密码
 注册论坛

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

用百度帐号登录

只需两步,快速登录

搜索
查看: 2070|回复: 3

我看了下kangle 3.5.11.11服务器响应mp4为304的话,播放器就没法用206状态继续播放,一直卡进度条 etag缓存bug,range http协议,官方开源git仓库

[复制链接]
 成长值: 75

签到天数: 4486 天

[LV.Master]伴坛终老

发表于 2017/11/11 00:59 | 显示全部楼层 |阅读模式 |Google Chrome 60.0.3112.113|Windows 10
天涯海角搜一下: 百度 谷歌 360 搜狗 有道 雅虎 必应 即刻
我看了下kangle 3.5.11.11服务器响应mp4为304的话,播放器就没法用206状态继续播放,一直卡进度条 etag缓存bug,range http协议,官方开源git仓库

1.jpg
3.jpg
我看了下kangle 3.5.11.11服务器响应mp4为304的话,播放器就没法继续播放,一直卡进度条
播放器锅还是←
好像是播放器不识别304代码
kangle怎么禁止304返回←
cf.png 用CF CDN没毛病
CF全都是206
改动播放器不是很现实。
论视频返回304状态导致这破B播放器不支持。。

也不知道是不是kangle的问题
QQ图片20171111020437.png


补充
自己搭建一个demo,304一点问题都没,播放器的锅←
QQ图片20171111170124.jpg


  1. <!DOCTYPE HTML>
  2. <html>
  3. <body>

  4. <video controls="controls" autoplay="autoplay">
  5.   <source src="139.mp4" type="video/mp4" />
  6. 你的浏览器不支持HTML5。
  7. </video>

  8. </body>
  9. </html>
复制代码


欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复

使用道具 举报

 成长值: 75

签到天数: 4486 天

[LV.Master]伴坛终老

发表于 2017/11/11 19:47 | 显示全部楼层 |Google Chrome 60.0.3112.113|Windows 10
确定3.5.11.11是语法BUG问题,如果etag没有变化就回应304,这就是bug
我看了下http协议 if-range是不应该回应304的,如果kangle回了304就是bug

官方已经确认,注释的是原来的代码, 原来的逻辑是如果etag有变化,就清掉range头,响应200,这是正确的。
后来改成了,如果etag没有变化就回应304
这不就是bug了吗?2333,中间优化弄错了。
If-Range的就是etag的内容

10月8号版本导致的问题,等待更新
1.png

2.png


HTTP协议如下:
The If-Range HTTP request header makes a range request conditional: if the condition is fulfilled, the range request will be issued and the server sends back a 206 Partial Content answer with the appropriate body. If the condition is not fulfilled, the full resource is sent back, with a 200 OK status.
This header can be used either with a Last-Modified validator, or with an ETag, but not with both.
The most common use case is to resume a download, to guarantee that the stored resource has not been modified since the last fragment has been received.

参考:https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Range

在单个请求中,Range头信息能够询问多个范围,这种特性称为"多部分范围(multipart ranges)"。请不要和分段下载(segmented downloading)混淆,几乎任何的下载工具都使用分段下载来提高下载速度。这些工具声称通过打开两个或多个并发的连接(每个连接请求文档的不同范围)提高了下载速度。
多部分范围的想法并没有开启多个连接,但是他能够使客户端软件能够在单个请求/响应周期中请求某个文档的最前面的十个和最后面的十个字节。

欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

 成长值: 75

签到天数: 4486 天

[LV.Master]伴坛终老

发表于 2017/11/13 22:18 | 显示全部楼层 |Google Chrome 60.0.3112.113|Windows 10
3.5.11.12已经勉强算修正此问题,视频已经正常播放,虽然还是会出304,但是不影响播放了

影响3.5.11.5-3.5.11.11版本
应该是3.5.11.5,可能更前面两个版本
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册论坛 新浪微博账号登陆用百度帐号登录

本版积分规则

手机版|Archiver|Mail me|网站地图|IT技术交流论坛 ( 闽ICP备13013206号-7 )

GMT+8, 2024/4/16 18:02 , Processed in 0.516348 second(s), 24 queries , MemCache On.

Powered by itzmx! X3.4

© 2011- sakura

快速回复 返回顶部 返回列表