2016-06-23 4 views
0

Я изучил, как играть 30-секундные предварительные просмотры, но пока все, что я могу найти, это андроидные оболочки для веб-API, которые требуют аутентификации пользователя.Получение и воспроизведение 30 секундных просмотров из Spotify

мне нужно, чтобы иметь возможность искать художник и играть первый предварительный просмотр, который появляется без необходимости пользователя проверить подлинность их счета

ответ

0

Так что для того, чтобы получить эту работу я должен был приковать 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 предварительного просмотра и играть, все без аутентификации!

+0

Кажется, нужен OAuth сейчас? –

+0

@JamesRattray Вы также можете использовать поток client_credentials. – dknaack

0

Вы должны проверить: https://developer.spotify.com/web-api/code-examples/

«Поиск художника (и Lookup) Demo "

Это пример веб-фрагмента, но вы можете попробовать посмотреть, как он делает соединение, не требуя аутентификации пользователя.

0

Если посмотреть на spotify api webpage они упоминают Endpoints marked “OAuth” above require application registration and user authorization via the Spotify Accounts Service to access certain data.