2015-01-03 28 views
0

我試圖創建一個與Spotify的iOS版SDK的播放列表,但我收到以下錯誤:Spotify的createPlaylistWithName導致禁止錯誤

Error Domain=com.spotify.ios-sdk Code=403 "forbidden" UserInfo=0x7fb9eb577cf0 {NSLocalizedDescription=forbidden} 

這裏是我想創建播放列表的方式:

[SPTRequest playlistsForUserInSession:session callback:^(NSError *error, SPTPlaylistList *myPublicPlaylists) { 

    [myPublicPlaylists createPlaylistWithName:playlistName publicFlag:FALSE session:session callback:^(NSError *error, SPTPlaylistSnapshot *myRequestedPlaylist) { 
      if (error != nil) { 

       return; 
      } 
      success(myRequestedPlaylist); 
     }]; 

    }]; 

我已經驗證,本次會議是有效的,從SPTPlaylistlist返回playlistsForUserInSession是正確的。創建播放列表以避免此錯誤的正確方法是什麼?

+1

您的應用程序需要有播放列表 - 修改 - 公衆範圍,使這一要求 - 不訪問令牌你使用有? –

回答

0

根據iOS SDK發行版的自述文件,「將用戶連接到應用程序時,必須提供應用程序需要操作的範圍,範圍是訪問用戶帳戶某個部分的權限,如果您不要求提供您需要的示波器,您將在嘗試執行各種任務時收到拒絕錯誤的權限。「

在這種情況下,需要爲(或兩者)SPTAuthPlaylistModifyPrivateScope和SPTAuthPlaylistModifyPublicScope授予權限。

例如:

// Create SPTAuth instance; create login URL and open it 
SPTAuth *auth = [SPTAuth defaultInstance]; 
NSURL *loginURL = [auth loginURLForClientId:kClientId 
         declaredRedirectURL:[NSURL URLWithString:kCallbackURL] 
            scopes:@[SPTAuthStreamingScope, SPTAuthPlaylistModifyPrivateScope, SPTAuthPlaylistModifyPublicScope]];