gpt4 book ai didi

javascript - 如何设置只下载部分文件的超链接?

转载 作者:行者123 更新时间:2023-11-30 09:48:44 25 4
gpt4 key购买 nike

如果我有一个链接到另一台服务器上的 mp3 文件的超链接,当用户单击该链接时,我如何才能让浏览器仅下载该文件的前 15 秒(或其他持续时间)?是否有一个 HTML5 属性可以自动执行此操作?

最佳答案

是的,有点 - 有 Media Fragment URI 规范允许您在 URI 中指定时间范围。您可以在 URI 后附加一个片段和 t=:

#t=from,to

例如:

http://domain.to/music.mp3#t=0,10    (or just t=,10 in this case if from=0)

将从 0-10 秒加载数据。

例子

Loading... will auto-play<br>
<audio
src="https://mp3l.jamendo.com/?trackid=912259&format=mp31#t=0,10"
autoplay controls preload="none"></audio>

<br><br>Or click this link:<br>
<a href="https://mp3l.jamendo.com/?trackid=912259&format=mp31#t=0,10">
CTRL + Click link to play 10s of audio in a new tab...</a>

但是,这不一定会阻止浏览器加载其余的音频数据。片段只是告诉媒体​​元素在特定时间开始和停止,除了定义片段时间之外无需手动操作。

将 preload 设置为 none 可能会有帮助,但即使这样浏览器也可以加载完整文件。你可以深入研究 Media Source Extensions控制缓冲区如何加载和缓存数据,但它是一个 wide topic .

或者使用 Range header 结合片段 uri 通过 XHR 加载,但您需要提前了解有关音频文件的一系列详细信息,以便确定字节范围,例如比特率、 channel 等。

关于javascript - 如何设置只下载部分文件的超链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37582583/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com