【问题标题】:(Spotify iOS SDK) renewSession always return nil session(Spotify iOS SDK) renewSession 总是返回 nil session
【发布时间】:2016-08-25 02:36:33
【问题描述】:

我正在 iOS 上构建一个小应用程序,它使用 Spotify SDK 来向其 Web Api 发出请求。问题是,每当我想发出请求时,我都会使用函数 STPAuth.renewSession 来更新令牌。但是对于那个函数文档说'如果没有指定令牌刷新服务,回调将返回 nil 作为会话'。这就是发生在我身上的事情。我总是得到一个 nil 'renewedSession' (https://developer.spotify.com/ios-sdk-docs/Documents/Classes/SPTAuth.html#//api/name/renewSession:callback:)

我在那里搜索过,发现这个视频中的这个人使用了一个运行一些脚本的服务器,他使用终端打开,在他的应用程序上指定了一个令牌刷新服务 URL (https://www.youtube.com/watch?v=GeO00YdJ3cE),但似乎没有提到在 Spotify 的 iOS SDK 教程中..

具体是怎么做的?或者也许有另一种方法..

提前谢谢你:)

【问题讨论】:

    标签: ios authentication oauth oauth-2.0 spotify


    【解决方案1】:

    听起来您正在寻找授权代码流。可以在此处找到对该概念的描述:https://developer.spotify.com/web-api/authorization-guide/#authorization_code_flow。为了让您的应用发送会话刷新请求,您需要某种服务来代表您发出请求。您可以使用 Node.js,但要注意它违反了 OAuth 2.0 标准。可以在此处部署到 Heroku 的 Node.js 令牌交换服务 URL 有一个很好的解释和设置:https://github.com/rorygilchrist/node-spotify-token-swap

    设置好服务后,您必须在应用内处理回调 URL,然后调用 SPTAuth.renewSession 来触发请求。

    【讨论】:

    • Spotify 想让我建立一个服务器,这样我就可以使用他们该死的 api 来刷新一个只持续 1 小时的该死的令牌......这是有史以来最糟糕的 api,这是人类的耻辱。
    • 它是使用 OAuth 2.0 的任何服务的标准架构,而不仅仅是 Spotify。
    猜你喜欢
    • 2015-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-10
    • 1970-01-01
    • 2017-03-28
    • 2015-03-05
    • 2014-08-25
    相关资源
    最近更新 更多