2016-04-29 69 views
0

我正在iOS上構建一個使用Spotify SDK向其Web API發送請求的小應用程序。事情是,我使用函數STPAuth.renewSession來更新令牌,只要我想提出請求。但是對於那個函數文檔說'如果沒有指定令牌刷新服務,回調將作爲會話返回nil'。這就是發生在我身上的事情。我總是得到一個零'renewSession'(https://developer.spotify.com/ios-sdk-docs/Documents/Classes/SPTAuth.html#//api/name/renewSession:callback :)(Spotify iOS SDK)renewSession始終返回零會話

我在那裏搜索,發現這個視頻上的這個人使用運行某個腳本的服務器,他打開使用終端,指定令牌刷新服務(https://www.youtube.com/watch?v=GeO00YdJ3cE)上的網址,但Spotify的iOS SDK教程中沒有提到此內容。

具體做法如何?或者,也許有另一種方式..

預先感謝您:)

回答

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

一旦你設置了服務,在你的應用程序中,你將不得不處理回調URL,然後調用SPTAuth.renewSession來觸發請求。

+2

Spotify希望我建立一個服務器,這樣我就可以用他們該死的api來刷新一個只能持續1個小時的令人震驚的令牌......這是有史以來最糟糕的api,這對人類來說是一種恥辱。 – NOlivNeto

+0

它是任何使用OAuth 2.0的服務的標準體系結構,而不僅僅是Spotify。 – mindgraffiti