Javascript Soundcloud API认证| NodeWebkit、重定向uri和本地文件系统

Javascript Soundcloud API认证| NodeWebkit、重定向uri和本地文件系统,javascript,api,authentication,soundcloud,node-webkit,Javascript,Api,Authentication,Soundcloud,Node Webkit,我正在尝试构建一个使用Soundcloud API的NodeWebkit应用程序。 但是我在连接/登录过程中已经失败了 在NodeWebkit中,用户可以在其硬盘驱动器的任何位置安装应用程序 因此,重定向uri永远不会相同。 并且在Web服务器上托管重定向页面将不起作用。 {不同的协议“文件:/”和“https:/”) 我在这里尝试了与API Doku不同的方法 但是没有结果 如何将SoundCloudAPI与NodewebKit结合使用 提前感谢。对于基于文件的解决方案,也许您每次都可以使用节

我正在尝试构建一个使用Soundcloud API的NodeWebkit应用程序。
但是我在连接/登录过程中已经失败了

在NodeWebkit中,用户可以在其硬盘驱动器的任何位置安装应用程序
因此,重定向uri永远不会相同。
并且在Web服务器上托管重定向页面将不起作用。
{不同的协议“文件:/”和“https:/”)

我在这里尝试了与API Doku不同的方法
但是没有结果

如何将SoundCloudAPI与NodewebKit结合使用


提前感谢。

对于基于文件的解决方案,也许您每次都可以使用节点模块的
\uu dirname
\uu filename
变量构造本地重定向\u uri


对于基于Web服务器的解决方案,由于
node\u remote
属性允许您调用源“localhost”或任何内容中的节点API,因此您应该能够通过节点中的上下文将soundcloud数据与callback.html开启器(也称为您的连接页)同步。

在发现NodeWebkit问题后,我看到了以下线程:

它描述了一种使用NodeWebkit iFrame的方法: 我的代码如下所示:

var def     = $.Deferred();        
var $iframe = $('<iframe nwfaketop nwdisable></iframe>')
                .attr('src', SoundCloud.ConnectUrl)
                .load(function(e) {

                    var parser      = document.createElement('a');
                        parser.href = this.contentWindow.location.href;

                    var search = parser.search.substr(1, parser.search.length);
                    var result = URLToArray(search);

                    if (result.error !== void 0) {
                        $iframe.remove();
                        def.reject(result.error_description);
                    }

                    if (result.code !== void 0) {
                        SoundCloud.LoginCode = result.code;
                        $iframe.remove();
                        def.resolve();
                    }
                })
                .appendTo($(opts.iframe));

return def;
var def=$.Deferred();
变量$iframe=$('')
.attr('src',SoundCloud.ConnectUrl)
.负载(功能(e){
var parser=document.createElement('a');
parser.href=this.contentWindow.location.href;
var search=parser.search.substr(1,parser.search.length);
var结果=URLToArray(搜索);
如果(result.error!==void 0){
$iframe.remove();
定义拒绝(结果错误描述);
}
如果(result.code!==void 0){
SoundCloud.LoginCode=result.code;
$iframe.remove();
def.resolve();
}
})
.appendTo($(opts.iframe));
返回def;
希望它能帮助其他有同样问题的人