Authentication SoundCloud:callback.html弹出窗口不';关不上 我已经注册了我的SoundCloud应用程序。

Authentication SoundCloud:callback.html弹出窗口不';关不上 我已经注册了我的SoundCloud应用程序。,authentication,soundcloud,Authentication,Soundcloud,我试图用“callback.html”API实现SoundCloud JS示例代码 上传录音时,会弹出授权登录窗口。 登录后,弹出窗口显示“此弹出窗口应自动关闭…” 但是弹出窗口不会关闭。 而且录音没有上传 我肯定SC.initialize有正确的“clientID”,并且从我的目录中正确引用了“callback.html”。 我错过什么了吗?也许是“客户秘密” 一次(福禄克),而不是正常的弹出消息“这应该关闭”,消息说“502坏网关”。但是我一直无法复制此消息。我也面临同样的问题,并找到了解

我试图用“callback.html”API实现SoundCloud JS示例代码

上传录音时,会弹出授权登录窗口。
登录后,弹出窗口显示“此弹出窗口应自动关闭…”
但是弹出窗口不会关闭。
而且录音没有上传

我肯定SC.initialize有正确的“clientID”,并且从我的目录中正确引用了“callback.html”。
我错过什么了吗?也许是“客户秘密”


一次(福禄克),而不是正常的弹出消息“这应该关闭”,消息说“502坏网关”。但是我一直无法复制此消息。

我也面临同样的问题,并找到了解决方案,如果您将
callback.html
更改为以下两个选项,它将起作用-

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Connect with SoundCloud</title>
  </head>
  <body onload="window.opener.setTimeout(window.opener.SC.connectCallback, 1)">
    <b style="text-align: center;">This popup should automatically close in a few seconds</b>
    <script type="text/javascript">
        window.opener.SC.connectCallback.call(this);
    </script>
  </body>
</html>

连接SoundCloud
此弹出窗口应在几秒钟内自动关闭
window.opener.SC.connectCallback.call(this);


连接SoundCloud
此弹出窗口应在几秒钟内自动关闭

SoundCloud的示例代码已损坏

这是来自SoundCloud的
callback.html

<body onload="window.opener.setTimeout(window.opener.SC.connectCallback, 1)">

我就是这样让它工作的:

<body onload="window.setTimeout(window.opener.SC.connectCallback, 1)">


SoundCloud的
connectCallback
使用
this.location
收集OAuth访问令牌。如果您在
window.opener
上设置超时,则在
connectCallback
内部,此
将指向应用程序的
窗口
,位置将是您的主页面。而将其设置在
窗口上
会将
绑定到回调弹出窗口,并且
此位置
会在查询参数中包含访问令牌。

您是否尝试在弹出窗口上打开开发工具以查看控制台输出?(例如,在Chrome中按Ctrl+Shift+I)。我可以通过HTTP上的测试页面和HTTPS上的回调页面重现您的问题。输出控制台显示
。。。安全性错误。。。协议必须匹配。
如果是您的情况,您可以通过使用选项
--禁用web安全性>/code>重新启动Chrome绕过此错误(出于测试目的)。我真的很想知道这个问题的答案-我甚至无法让他们的API文档中的基本示例正常工作。弹出窗口刚刚挂起。我在弹出控制台上没有看到错误,所以我不知道发生了什么。我的凭证(clientId、redirectUri等)都配置正确,但运气不佳。
<body onload="window.opener.setTimeout(window.opener.SC.connectCallback, 1)">
<body onload="window.setTimeout(window.opener.SC.connectCallback, 1)">