(Spotify iOS SDK)renewSession始终返回nil会话

时间:2016-04-29 20:12:01

标签: ios authentication oauth oauth-2.0 spotify

我正在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:)

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

具体如何完成?或者也许有另一种方式..

提前谢谢你:)

1 个答案:

答案 0 :(得分:2)

听起来您正在寻找授权代码流程。可以在此处找到该概念的描述: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

设置完服务后,在您的应用中,您必须处理回调网址,然后调用SPTAuth.renewSession来触发请求。