Реагируйте Node.js на проблему с Spotify-web-api при получении информации о плейлисте - PullRequest
0 голосов
/ 20 марта 2020

Я создаю небольшое веб-приложение для React, чтобы научиться использовать API Spotify: https://github.com/thelinmichael/spotify-web-api-node и следую этому уроку: https://www.youtube.com/watch?v=prayNyuN3w0&t=1064s. Но я столкнулся с проблемой. У меня есть эта функция:

  getNowPlaying(){
    spotifyApi.getMyCurrentPlaybackState()
      .then((response) => {
        console.log(response);
        this.setState({
          nowPlaying: { 
              name: response.item.name, 
              albumArt: response.item.album.images[0].url
            }
        });
      })  
  }

, которая правильно возвращает то, что я сейчас слушаю. У меня также есть это:

getUserPlaylist(){
    spotifyApi.getUserPlaylists('1242952295')
  .then((response) => {
    console.log("This is the name of the 5th item in the response object: ", response.items[5].name);
  });
  }

Это правильно возвращает название 5-го списка воспроизведения в моем профиле.

Однако ни одна из этих функций не возвращает правильную информацию о конкретном c списке воспроизведения:

  getSlamsPlaylist(){
    spotifyApi.getPlaylist('1mJN7wfIm6NGYqniPuEKpJ') //5ieJqeLJjjI8iJWaxeBLuK (from example)
    .then((response) => {
      console.log(response);
    });
  }

  getSlamsPlaylistV2(){
    spotifyApi.getPlaylist('1mJN7wfIm6NGYqniPuEKpJ') //5ieJqeLJjjI8iJWaxeBLuK (from example)
    .then(function(data) {
      console.log('Some information about this playlist', data.body);
    }, function(err) {
      console.log('Something went wrong!', err);
    });
  }

Первый возвращает просто: "uncaught exception: Object", а вторая возвращает, что Идентификатор плейлиста недействителен, хотя я пробовал несколько правильных. Кроме того, в данных, возвращаемых методом getUserPlaylist (), я вижу, что используемые мной идентификаторы верны.

Кроме того, это также возвращает неопределенное значение:

getUserPlaylistV2(){
    spotifyApi.getUserPlaylists('1242952295')
    .then(function(data) {
      console.log('Some information about this playlist', data.body);
    }, function(err) {
      console.log('Something went wrong!', err);
    });
  }

Чего мне не хватает, чтобы сделать эту работу?

Результаты Console.log getSlamsPlaylist (): необработанное исключение: Объект

Результаты Console.log getSlamsPlaylistV2 ():

Something went wrong! 
XMLHttpRequest { onreadystatechange: onreadystatechange(), readyState: 4, timeout: 0, withCredentials: false, upload: XMLHttpRequestUpload, responseURL: "https://api.spotify.com/v1/users/7CoPUH1fJFKzcc7NAIv9XU/playlists/undefined", status: 404, statusText: "Not Found", responseType: "", response: "{\n  \"error\" : {\n    \"status\" : 404,\n    \"message\" : \"Invalid playlist Id\"\n  }\n}" }

Я могу дать больше информации об этом, если мне нужно.

Console.log результат getUserPlaylistV2 (): некоторая информация об этом плейлисте не определена

...