使用HTML5音频标记发送自定义HTTP请求标头

pul*_*e00 8 audio streaming html5

是否可以使用HTML5音频标签发送自定义HTTP请求标头?我对发送一个HTTP Range标头特别感兴趣,所以webserver只会传输一部分mp3文件.我在音频标签 api中找不到办法.

Kel*_*lca 6

如果您可以不支持IE之类的较旧的浏览器,可以立即与服务人员联系。在服务工作者中拦截提取请求,然后使用自定义标头将其发送出去。这是拦截对Google云端硬盘的请求并添加Bearer令牌的基本示例。

self.addEventListener('fetch', function(event) {
  if(event.request.url === 'https://www.googleapis.com/drive/v3/files/fileID?alt=media') {
    event.respondWith(
        fetch(event.request.url, {
            method: "GET",
            headers: {
                "Authorization": "Bearer myBearerToken",
            },
            redirect: "follow"
        })
    );    
  }
});
Run Code Online (Sandbox Code Playgroud)

编辑:2018-11-17-添加了这不适用于旧版浏览器的方式。

  • 这如何与音频标签一起使用?它似乎没有触发 fetch 事件。 (4认同)

Mic*_*riv 5

不按照规范,你不能.音频标签实际上非常不灵活.