(Spotify Web API) 创建新播放列表 - POST 请求返回 'Error 403 (Forbidden)'

(Spotify Web API) Create New Playlist - POST request returning 'Error 403 (Forbidden)'

这是关于如何创建新播放列表的 link 网络 API 注释。 https://developer.spotify.com/web-api/create-playlist/

据我了解,POST 请求 url https://api.spotify.com/v1/users/{user_id}/playlists。这是在传递访问令牌和数据时请求的。数据的内容类型为 'application/json'。

出于某种原因,此操作失败并在控制台中返回错误 403(禁止访问)

有什么我想念的吗?

//(playlistName, userId, accessToken) are passed to this.

var urlString = 'https://api.spotify.com/v1/users/' + userId + '/playlists';

var jsonData = {
  "name": playlistName,
  "public": false
};

$.ajax({
  type: 'POST',
  url: urlString,
  data: jsonData,
  dataType: 'json',
  headers: {
    'Authorization': 'Bearer ' + accessToken
  },
  contentType: 'application/json',
  success: function(result) {
    console.log('Woo! :)');
  },
  error: function() {
    console.log('Error! :(');
  }
})

在尝试了你的示例后,我在填写虚假数据时得到了 401 unauthorized。所以你被授权了,但是API确实没有授予你权限(403 forbidden)。

请查看授权指南。我很确定,你的错误就在那里。尤其要看看 scope。您可能只是没有在登录时授予足够的权限。因此最终只有 public 访问权限,其中不包括添加播放列表。

我从 API 文档中引用:

To be able to create private playlists, the user must have granted the playlist-modify-private scope.

https://developer.spotify.com/web-api/authorization-guide/