【发布时间】:2012-06-07 14:45:40
【问题描述】:
我目前正在使用 SoundCloud API,并希望在单击按钮时嵌入轨道。
我收到两个错误:
XMLHttpRequest 无法加载 http://soundcloud.com/oembed.json?url=http%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F48419073。 Access-Control-Allow-Origin 不允许 Origin null。
与
未捕获的类型错误:无法读取 null 的属性“html”
这是我的代码:
<button onclick="getPopular()">+1</button>
<div id="track"></div>
<script src="http://connect.soundcloud.com/sdk.js" type="text/JavaScript"></script>
<script type="text/JavaScript">
SC.initialize({
client_id: "**************",
});
var getPopular = function() {
SC.get("/tracks", {limit: 1}, function(tracks) {
var track = tracks[0];
alert("Latest track: " + track.title);
SC.oEmbed(track.uri, document.getElementById("track"));
});
};
</script>
我在我的代码中使用了一个警报,让我知道它实际上是从 SoundCloud API 获取信息。我只是不确定还有什么阻止它嵌入。
谢谢,提前,或者看看我的问题。
- jiggabits
【问题讨论】:
-
那个“client_id”是你必须支付的吗?
-
让我猜猜,您是在尝试从本地主机访问它吗?
-
@Pointy SoundCloud 是您分享歌曲的地方,所以我猜这个 API 会从选定的用户那里获取歌曲。无论如何,OP,你是在本地测试你的 API 吗?我的读心能力不如其他所有 SO 回答者,而且您的起源问题很可能与在 Chrome/Opera 上本地运行您的 API 有关。
-
Hrm,我在 Chrome 上本地运行它。让我看看我是否可以暂时将代码托管在某个地方。 @Fabrício Matté 感谢您的意见。
标签: javascript soundcloud