1

我正在开发一个 HTML5(无闪存)SHOUTCast 客户端。对于某些流,我可以为 MP3 流设置一个<audio>标签src,它播放得很好。

但是有一个流不能那样工作。这是因为流的 URL 与 Steam 的index.html页面相同。它使用用户代理。如果是浏览器,你会得到一个 HTML 页面;如果不是,您将获得 MP3 流。

<audio>那么,在为标签请求资源时,如何编辑浏览器发送的请求头呢?我不希望它发送用户代理。

4

1 回答 1

3

我认为没有办法更改用户代理。;但是您可以通过在 URL 的末尾添加分号来强制 SHOUTcast 为流提供服务。然后 SHOUTcast 将忽略用户代理。

HTML5 示例:

<!DOCTYPE html>
<html>
  <body>
    <audio controls>
      <source src="http://72.13.82.82:5100/;"/>
      <em>Sorry, your browser doesn't support HTML5 audio.</em>
    </audio>
  </body>
</html>

您还可以通过http://72.13.82.82:5100/;直接在浏览器中访问来验证解决方法。您应该会看到一些 ICY 元数据,然后是 mpeg 流。

于 2013-06-20T20:07:43.730 回答