3

正如我在文档 ( http://developers.soundcloud.com/docs/api/guide#crossdomain )中所读到的,Soundcloud api 应该支持 cors 。

但我认为情况并非如此:

XMLHttpRequest cannot load http://ec-media.soundcloud.com/fxguEjG4ax6B.128.mp3?longurldata... Cannot make any requests from null.

我究竟做错了什么?我正在尝试使用 aurora.js + mp3.js 播放流。

4

2 回答 2

2

支持CORS不是全有或全无,服务器端选择支持特定的来源(以及标头和方法)。

在您的情况下,您似乎是从本地文件(origin null)进行调用,例如您通过从文件系统或类似文件中双击加载的 HTML 文档。显然他们不允许这样做。

于 2013-02-26T21:44:36.407 回答
1

不幸的是,目前,从 CDN(子域)传递的 mp3 文件上未启用 CORS 标头ec-media。如果您需要通过 XHR 请求这些文件,则需要使用代理。

从 API 返回的 JSON 数据启用了 CORS 标头,但不是 mp3。

如果您尝试使用 Web Audio API,您可以mediaElementSource通过设置音频的属性来使用和加载 mp3 src,以用作“媒体源”,如此所述。

于 2013-02-27T10:25:33.943 回答