Soundcloud API错误NS\u错误\u DOM\u错误\u URI:拒绝访问受限URI(JavaScript)
我刚刚开始熟悉Soundcloud的API,我遇到了一些麻烦。据我所知,在Soundcloud API错误NS\u错误\u DOM\u错误\u URI:拒绝访问受限URI(JavaScript),javascript,api,sdk,soundcloud,Javascript,Api,Sdk,Soundcloud,我刚刚开始熟悉Soundcloud的API,我遇到了一些麻烦。据我所知,在SC.initialize中,我所需要的只是一个客户端id。我已经使用了code Academy的教程开始学习,非常棒。现在我正试图实现一些东西,我遇到了一些麻烦。 当我在代码学院运行代码时,它正是我想要它做的。现在,我正试图在浏览器中运行它,我得到一个空白屏幕,出现以下错误: NS_错误\u DOM_错误\u URI:拒绝访问受限URI@http://connect.soundcloud.com/sdk 在做了一些研究之
SC.initialize
中,我所需要的只是一个客户端id。我已经使用了code Academy的教程开始学习,非常棒。现在我正试图实现一些东西,我遇到了一些麻烦。当我在代码学院运行代码时,它正是我想要它做的。现在,我正试图在浏览器中运行它,我得到一个空白屏幕,出现以下错误: NS_错误\u DOM_错误\u URI:拒绝访问受限URI@
http://connect.soundcloud.com/sdk
在做了一些研究之后,我发现这些错误与域前缀有关。因此,我尝试将其更改为http://www.connect.soundcloud.com/sdk。但当我这样做时,我会得到一个不同的错误:
SC
未定义
我做错了什么我对使用API还不熟悉,非常感谢您的帮助。
以下是我正在做的:
(JavaScript)
SC.initialize({
客户id:“为隐私而隐藏”,
});
$(文档).ready(函数(){
SC.get('/users/5577686/tracks',{limit:7},函数(tracks){
$(轨道)。每个(功能)(索引,轨道){
$('#tracktitle').append($('').html(track.title));
$('#trackimage')。追加(“”);
$('#play')。追加(“”);
});
});
});
(HTML)
我真的不认为代码有什么问题,因为代码学院的一切似乎都很好。我认为这更多的是一个熟悉API的问题。我需要做进一步的身份验证吗?我需要的不仅仅是客户ID吗?再一次,我非常困惑,希望能在这方面得到任何帮助。谢谢你的阅读
(我还循序渐进地编写了GOOD的Soundcloud API集成教程,我得到了同样的错误,因此这进一步证实了代码可能不是问题所在,但连接到API可能是)这里的问题是,当连接到另一台服务器上托管的API时,您必须使用相同的协议。对于本地文件,您使用文件协议(
file://
),soundcloud使用该协议:http://
或https://
遵循以下步骤:
如果您的服务器使用
http
协议,则您的域必须是http://soundcloud.com/...
,但如果您的服务器使用https
协议,则API的域必须是https://....
。因此,一旦协议匹配,就可以通过API传递数据。SOLVED!如果其他人遇到此问题:我们不知道文件需要托管在公共服务器上。当我观看优秀教程的编码时,他不知怎么地在本地运行它们。啊!服务器不必为此公开。它只需要从web服务器而不是文件系统运行它。有很多不同的解决方案,但是如果你有Mac电脑,你可以看看像@N1G3L这样的工具,你应该把它作为这个问题的答案,并接受它。
SC.initialize({
client_id: 'hidden for privacy',
});
$(document).ready(function() {
SC.get('/users/5577686/tracks', {limit:7}, function(tracks) {
$(tracks).each(function(index, track) {
$('#tracktitle').append($('<li></li>').html(track.title));
$('#trackimage').append("<img src='" + track.artwork_url + "' />");
$('#play').append("<a href='" + track.permalink_url + "' >" + "Play" + "</a>");
});
});
});
<!DOCTYPE HTML>
<html>
<head>
<script src="http://connect.soundcloud.com/sdk.js"></script>
<script src="soundcloud.js"></script>
</head>
<body>
<div id="tracktitle"></div>
<div id="trackimage"></div>
<div id="play"></div>
</body>
</html>