Soundcloud身份验证/连接javascript问题

时间:2012-11-09 15:27:35

标签: javascript jquery api soundcloud

<script src="http://connect.soundcloud.com/sdk.js"></script>
<script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
<script>
// initialize client with app credentials
SC.initialize({
  client_id: 'bea6b4a2c1108a4cfa99f0d40966108a',
  redirect_uri: 'http://www.samplewars.com/'
});

// initiate auth popup
SC.connect(function() {
  SC.get('/me', function(me) { 
    alert('Hello, ' + me.username); 
  });
});
</script>


Unsafe JavaScript attempt to access frame with URL http://samplewars.com/soundcloud/ from frame with URL http://www.samplewars.com/soundcloud/?code=77c9dc160d723a52f67d42a89067848e&state=SoundCloud_Dialog_80886#access_token=1-26934-195352-78151464de9a2ec39&scope=non-expiring. Domains, protocols and ports must match.

我在Chrome控制台中收到此错误,而在FF中它只是循环执行允许进程而不会发出警报。

有趣的是,它工作了一秒钟,然后我去喝酒,回来了,它被打破了。

编辑:它也会保留在弹出窗口内,而不是关闭回原始窗口 编辑2:它实际上在应用程序的连接菜单中添加了soundcloud内部的权限。只是不吐出警报。

编辑3:好吧,在我添加了一个onclick事件后,它可以在FF中工作,以阻止它不断循环遍历js。所以现在的代码是:

<script src="http://connect.soundcloud.com/sdk.js"></script>
<script>
// initialize client with app credentials
SC.initialize({
  client_id: 'bea6b4a2c1108a4cfa99f0d40966108a',
  redirect_uri: 'http://www.samplewars.com/'
});

// initiate auth popup
function connectSC(){
SC.connect(function() {
  SC.get('/me', function(me) { 
    alert('Hello, ' + me.username); 
  });
});
}
</script>
<div id="connect_button" onClick="connectSC()">
connect to soundcloud
</div>

哪个适用于FF,但不适用于Chrome或IE。

1 个答案:

答案 0 :(得分:0)

有趣的因素。如果您尝试使用不带www的URL进行连接,我发现了这个问题。作为前缀,它将无法正常工作。 Soundcloud必须要求它才能构建令牌