I have 禁用缓存勾选已删除,但每次视频循环迭代仍发出请求(仅在 chrome 上)。
What Initiator: Other
chrome 检查器网络部分的意思是什么?第一次从主机加载视频,但之后所有请求都从主机加载Other
.
每次迭代视频大小都是一样的,不是(来自缓存)。这是否意味着浏览器每次都会下载它?
是否可以在不将视频保存在 localStorage 中的情况下避免这种情况(我在类似的问题中看到过),因为此解决方案在私人浏览器模式下不起作用并且 localStorage 有大小限制?
UPDATE
With Disable cache checked
Without Disable cache checked
UPDATE
错误报告:https://bugs.chromium.org/p/chromium/issues/detail?id=680063 https://bugs.chromium.org/p/chromium/issues/detail?id=680063
这的意思是除了Chrome之外的另一个进程发起请求 https://developer.chrome.com/devtools/docs/network:
Some 其他过程或发起请求的操作,例如用户
通过链接或在地址中输入 URL 导航到页面
酒吧。
就 Chrome 而言,视频使用ffmpeg解码 http://www.chromium.org/developers/design-documents/video这可能是这样的other过程。该过程可能会从缓存中重新打开文件,这就是发起请求的原因,或者,缓存仅保存文件的后半部分(或最大内容长度总和),以防文件很大并且必须重新流式传输部分内容再次 - 不过,您声明当缓存被禁用时,这种情况不会发生。
localStorage
大小非常有限,不太适合存储视频数据(它只能保存字符串,因此视频必须编码为 mime-64,这会增加大小 33% + 由于 unicode,每个字符占用两个字节)。
更好的选择是使用索引数据库 https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API- 这可以容纳更大的数据并以二进制格式(Blob)存储数据。但它有一个初始限制localStorage
但与后一种方法相反,您可以请求更大的尺寸,需要用户确认。我还没有测试过,但我假设您在私有模式下会遇到与任何其他存储机制相同的限制。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)