【问题标题】:spotify-web-api-node - WebapiError: Unauthorizedspotify-web-api-node - WebapiError:未经授权
【发布时间】:2017-11-09 04:36:56
【问题描述】:
var SpotifyWebApi = require('spotify-web-api-node');

var spotifyApi = new SpotifyWebApi({
    clientId : 'xxx',
    clientSecret : 'xxx',
    redirectUri : 'https://example.com/callback'
});

spotifyApi.getTrack('2q8eudK0r9ImgCB1XhFfxG').then(function(data) {
    console.log(data);
});

我的代码有效,但 1 个月后出现此错误。

(node:12824) UnhandledPromiseRejectionWarning: 未处理的承诺 拒绝(拒绝ID:1):WebapiError:未经授权

(节点:12824) DeprecationWarning:不推荐使用未处理的承诺拒绝。在 未来,未处理的承诺拒绝将终止 具有非零退出代码的 Node.js 进程。

【问题讨论】:

标签: javascript node.js spotify


【解决方案1】:

根据this issue需要设置访问令牌。

spotifyApi.setAccessToken('myAccessToken');

另外,请看这里:https://github.com/thelinmichael/spotify-web-api-node#setting-credentials

// Set necessary parts of the credentials on the constructor
var spotifyApi = new SpotifyWebApi({
  clientId : 'myClientId',
  clientSecret : 'myClientSecret'
});

// Get an access token and 'save' it using a setter
spotifyApi.clientCredentialsGrant()
  .then(function(data) {
    console.log('The access token is ' + data.body['access_token']);
    spotifyApi.setAccessToken(data.body['access_token']);
  }, function(err) {
    console.log('Something went wrong!', err);
  });

// Get tracks in a playlist
spotifyApi.getPlaylistTracks('thelinmichael', '3ktAYNcRHpazJ9qecm3ptn', { 'offset' : 1, 'limit' : 5, 'fields' : 'items' })
  .then(function(data) {
    console.log('The playlist contains these tracks', data.body);
  }, function(err) {
    console.log('Something went wrong!', err);
  });

【讨论】:

  • 谢谢!在此期间我已经找到了解决方案。
猜你喜欢
  • 1970-01-01
  • 2018-05-21
  • 2018-08-12
  • 1970-01-01
  • 1970-01-01
  • 2021-09-22
  • 2014-10-03
  • 2017-07-02
  • 2020-02-11
相关资源
最近更新 更多