Не могу изменить ограничение по умолчанию в Spotify API (лучшие исполнители) — React Native

#reactjs #api #native #spotify

#reactjs #API #native #spotify

Вопрос:

Я перепробовал все, чтобы изменить это… понятия не имею, что происходит не так, он все еще просто возвращает 20 исполнителей, несмотря ни на что.

 const sp = await this.getValidSPObj();
const { id: userId } = await sp.getMe();
const { items: topArtists } = await sp.getMyTopArtists(userId, {limit: 10, offset: 20});
this.props.setData("TopArtists", topArtists);
  

Примечания из API…

 /**
 * Get the current user’s top artists based on calculated affinity.
 * See [Get a User’s Top Artists](https://developer.spotify.com/web-api/get-users-top-artists-and-tracks/) on
 * the Spotify Developer site for more information about the endpoint.
 *
 * @param {Object} options A JSON object with options that can be passed
 * @param {function(Object,Object)} callback An optional callback that receives 2 parameters. The first
 * one is the error object (null if no error), and the second is the value if the request succeeded.
 * @return {Object} Null if a callback is provided, a `Promise` object otherwise
 */
getMyTopArtists(
  options?: Object,
  callback?: ResultsCallback<SpotifyApi.UsersTopArtistsResponse>
): Promise<SpotifyApi.UsersTopArtistsResponse>;
  

Ответ №1:

Согласно функции, для signature standalone параметра нет userID , вы передаете userID как first параметр, на самом деле first параметром является options объект!

документы также ссылаются на то, что некоторым functions не нужны userID : https://github.com/JMPerez/spotify-web-api-js#getting-users-information

Некоторым функциям не нужно получать идентификатор пользователя в качестве параметра, и они будут использовать информацию пользователя из токена доступа: <code_example>

p.s.: Я полагаю, основываясь на вашем, access_token и scope он определяет пользователя.