Так что для того, чтобы получить эту работу я должен был приковать 2 API вызовы вместе. Первая из них ищет художник, а затем второй выглядит для предварительного просмотра:
Вы называете API с этой ссылкой (GET): https://api.spotify.com/v1/search?q=<artist name>&type=artist
который затем возвращает JSON структуру, как это:
{
"artists": {
"href": "https://api.spotify.com/v1/search?query=bring+me+the+horizon&offset=0&limit=20&type=artist",
"items": [
{
"external_urls": {
"spotify": "https://open.spotify.com/artist/1Ffb6ejR6Fe5IamqA5oRUF"
},
"followers": {
"href": null,
"total": 1067846
},
"genres": [
"metalcore"
],
"href": "https://api.spotify.com/v1/artists/1Ffb6ejR6Fe5IamqA5oRUF",
"id": "1Ffb6ejR6Fe5IamqA5oRUF",
"images": [
{
"height": 640,
"url": "https://i.scdn.co/image/49aad7da4f872acb3005727392631dab282423d1",
"width": 640
},
{
"height": 320,
"url": "https://i.scdn.co/image/d9cf89b9db73b95ed15d9e29e30d0dd8afea23e2",
"width": 320
},
{
"height": 160,
"url": "https://i.scdn.co/image/d9e514e15f4940c77029ef3b11291d557b345ae9",
"width": 160
}
],
"name": "Bring Me The Horizon",
"popularity": 76,
"type": "artist",
"uri": "spotify:artist:1Ffb6ejR6Fe5IamqA5oRUF"
}
],
"limit": 20,
"next": null,
"offset": 0,
"previous": null,
"total": 1
}
}
Потому что это то возвращает идентификатор нравится, мы можем получить лучшие треки для этого художника и играть превью:
Вызовите API с этим URL (GET):
https://api.spotify.com/v1/artists/<ARTIST ID>/top-tracks?country=GB
Отсюда мы можем извлечь URL предварительного просмотра и играть, все без аутентификации!
Кажется, нужен OAuth сейчас? –
@JamesRattray Вы также можете использовать поток client_credentials. – dknaack