【发布时间】:2016-02-02 21:31:29
【问题描述】:
我使用Soundclouds JS sample code for client side JS apps 连接Soundcloud API,作为开始。他们的代码和我的唯一区别是我输入了自己的 client_id 和 redirect_uri。 (我还复制了他们的 callback.html,把它放在我的服务器上,把它的地址放在我的应用程序的 soundcloud 页面中)。
在我的弹出窗口拦截器确定后,身份验证弹出窗口出现并询问访问我的帐户的权限,我授予它权限,然后弹出窗口清除所有以前的内容并简单地通知:'此弹出窗口应在几秒钟内自动关闭seconds' - 但它没有,并且显示其过去授权的其余代码永远不会显示。
这是我正在使用的 Soundclouds 示例。我在 localhost 上使用服务器并部署它并适当更改 redirect_uri 时尝试过它,结果完全相同。
SC.initialize({
client_id: 'YOUR_CLIENT_ID', // changed it to mine
redirect_uri: 'http://example.com/callback'
});
SC.connect().then(function() {
return SC.get('/me');
}).then(function(me) {
alert('Hello, ' + me.username);
});
查看 Chrome 和 Firefox 的开发控制台,我没有看到任何错误。我还确保我的 redirect_uri 文件的协议在我的帐户设置和代码之间匹配。
我的应用程序的 Soundcloud 页面上的“您的应用程序的网站”字段是否有影响?我尝试设置它,它没有解决它。客户端密码有什么作用?
到目前为止,我找到的最接近答案的是this SO page,他似乎发现你不能使用不以“www”开头的网址。 ???我很难相信这是问题所在,不幸的是,对我来说,localhost 或我的域都不是以 www 开头的。
提前感谢您的帮助。
【问题讨论】:
标签: javascript oauth popup soundcloud