Javascript 声云CORS

Javascript 声云CORS,javascript,soundcloud,cors,Javascript,Soundcloud,Cors,正如我在文档()中所读到的,SoundCloudAPI应该支持cors 但我认为情况并非如此: XMLHttpRequest cannot load http://ec-media.soundcloud.com/fxguEjG4ax6B.128.mp3?longurldata... Cannot make any requests from null. 我做错了什么?我正在尝试使用aurora.js+mp3.js播放流。支持不是全有或全无,服务器端选择支持特定的来源(以及标题和方法) 在您的情

正如我在文档()中所读到的,SoundCloudAPI应该支持cors

但我认为情况并非如此:

XMLHttpRequest cannot load http://ec-media.soundcloud.com/fxguEjG4ax6B.128.mp3?longurldata... Cannot make any requests from null.
我做错了什么?我正在尝试使用aurora.js+mp3.js播放流。

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


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

不幸的是,目前,从CDN(
ec媒体
子域)传送的mp3文件上没有启用CORS头。如果需要通过XHR请求这些文件,则需要使用代理

CORS头在API返回的JSON数据上启用,但在MP3上不启用


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

不妨发布您的代码。这很糟糕,因为我是HypeMachine ChromeExtension的维护者,这导致了一些soundcloud歌曲的下载。请让我知道如果有任何变化。哦,感谢您的快速回复,我会将代码移动到VPS与域,我会再试一次明天。顺便说一句,我现在正在做的是:我有nginx来处理域s.co,并且修改了/etc/hosts,使s.co指向127.0.0.1,所以origin不应该为null,对吗?@user1188570:如果您从
加载页面,它不应该为
null
http://s.co
,不。嗯,似乎XHRHTPrequest有时对mp3起作用。我创建了一个在Chrome上运行的演示程序www.zya.cc/scsampler。但并非所有链接都有效。即使可以下载。原因是什么?@gryzzly和will。