(Spotify Web API)创建新播放列表 - POST 请求返回“错误 403(禁止)”

Posted

技术标签:

【中文标题】(Spotify Web API)创建新播放列表 - POST 请求返回“错误 403(禁止)”【英文标题】:(Spotify Web API) Create New Playlist - POST request returning 'Error 403 (Forbidden)' 【发布时间】:2016-10-22 06:19:14 【问题描述】:

这里是有关如何创建新播放列表的 Web API 说明的链接。 https://developer.spotify.com/web-api/create-playlist/

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

由于某种原因,此操作失败并在控制台中返回错误 403 (Forbidden)

我缺少什么吗?

//(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! :(');
  
)

【问题讨论】:

请检查您的 OAuth 令牌。乍一看,其余部分似乎都很好。 嘿 :) 我可以使用他们的示例创建播放列表。这是使用我的所有者 ID、播放列表名称和用于 Ajax 请求的 oAuth 令牌。我刚刚尝试查看是否将内容类型更改为 'contentType: application/json; charset=utf-8' 做任何事情都没有运气。在他们的例子中似乎工作正常。但不是通过 Ajax POST。 (我仍然收到 403 错误)。你让它工作了吗?谢谢, 【参考方案1】:

尝试过你的榜样,我得到一个401 unauthorized中伪造数据填充时。所以,你有权,但API真的不授予您的权利(403 forbidden)。 P>

请看看授权指南。我很确定,你的错误在那里。尤其是看看scope。在登录你可能根本不会给予足够的电力。因此结束了与唯一的公共访问,其不包括添加的播放列表。 P>

我从 API 文档中引用:

要能够创建私有播放列表,用户必须已经授予 playlist-modify-private范围。 P>

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

【讨论】:

现在工作!我在生成 oAuth 令牌时搞砸了,并且没有正确包含“播放列表修改私有”。现在,它已加入它的工作如预期!感谢缩小下来,并帮助了:) SPAN>

以上是关于(Spotify Web API)创建新播放列表 - POST 请求返回“错误 403(禁止)”的主要内容,如果未能解决你的问题,请参考以下文章

Spotify Web API 客户端范围不起作用

如何使用其 Web-API 让 IOS 应用播放 Spotify 播放列表?

使用 spotify api 控制 spotify web player sdk 的播放状态

如何从 Spotify Web API 获取播放列表的特定快照?

Spotify 身份验证流程 (Spotify API)

如何在 spotify 应用程序 API 中创建播放列表并获取其 URI?