Javascript和SC API初学者在这里。我在API页面上关注了这个非常基本的示例:https://developers.soundcloud.com/docs/api/sdks#authentication
我之前已经意识到这个问题,但是我花了好几个小时尝试他们的(可能过时的?)解决方案,但没有一个能为我工作。
我的问题是弹出窗口(callback.html)没有关闭。有一个错误:
Uncaught SecurityError:阻止带有原点的帧(假设前面有一个' http://')127.0.0.1来访问一个带有原点" null"的帧。请求访问的帧具有" http"的协议,被访问的帧具有"文件"的协议。协议必须匹配
我认为这里有2个问题我是否正确?
- 在callback.html文件中,window.opener.SC.connectCallback返回null,因此setTimeout()函数无法正常工作
- 无法以这种方式在本地服务器上托管callback.html文件
醇>
那么我在哪里可以托管callback.html文件进行开发? 我在我的本地Web服务器上(在文件夹C:\ inetpub \ wwwroot中)托管了callback.html文件并注册了我的应用程序。
我已尝试将redirect_uri设置为' 127.0.0.1//callback.html'和' localhost / callback.html',但两者都会导致同样的问题。假设有一个' http://'在两者面前(SO赢了,让我发布超过2个链接)。
这是我的代码:
SC.initialize({
client_id: "xxxxxxxxxxxxxxxxxx",
redirect_uri: "http://localhost/callback.html"
});
$(document).ready(function(){
// initiate authentication popup
$('#connectImg').on('click',function(){
SC.connect(function() {
// This gets the authenticated user's username
SC.get('/me', function(me) {
alert('Hello, ' + me.username);
console.log('Hello, ' + me.username);
});
});
});
});