Я пытаюсь получить доступ ко всем плейлистам пользователя Spotify
let request2: URLRequest = try! SPTPlaylistList.createRequestForGettingPlaylists(forUser: self.username, withAccessToken: accessToken)
print(request2)
SPTRequest.sharedHandler().perform(request2) { (error, response, data) in
if error == nil {
print(response)
let playlists = try! SPTPlaylistList(from: data, with: response)
}else{
print(error)
}
}
И я могу видеть плейлисты, если я печатаю «плейлисты»
some([<SPTPartialPlaylist: 0x10aa854d0>: john mayer [2 tracks] (spotify:user:virajdeshpande88:playlist:3BLBrqb3CURu5KFPqdYqd1), <SPTPartialPlaylist: 0x10aa922a0>: beatles [2 tracks] (spotify:user:virajdeshpande88:playlist:2t6z8KEhZGzY7Tqvy8QoW4)])
Но я не могуполучить доступ к плейлистам по отдельности или перебирать playlists.items.Если я сделаю следующее:
print (playlists.items[0])
я получу «Неожиданно найденный ноль при развертывании необязательного значения».
Обновление: я пытался использовать playlistsForUser: withAccessToken: callback: и теперь я могу получить доступ ко всем плейлистам пользователя.Но кажется, что это работает, только если следующий блок кода находится внутри блока if {} фрагмента кода, который я разместил выше.Если этот блок размещен сам по себе, я снова получаю ошибку nil.
SPTPlaylistList.playlists(forUser: self.username, withAccessToken: accessToken, callback: {(error, playlist_list) in
if error == nil {
let list = playlist_list as! SPTPlaylistList
print(list.items[0])
print(list.items[1])
let playlist = list.items[0] as! SPTPartialPlaylist
print(playlist.name)
}else{
print("latest error")
}
})