【问题标题】:(Spotify Web API) Create New Playlist - POST request returning 'Error 403 (Forbidden)'(Spotify Web API)创建新播放列表 - POST 请求返回“错误 403(禁止)”
【发布时间】: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 错误)。你让它工作了吗?谢谢,

标签: javascript jquery ajax post spotify


【解决方案1】:

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

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

我从 API 文档中引用:

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

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

【讨论】:

  • 现在工作!我在生成 oAuth 令牌时搞砸了,并且没有正确包含“播放列表修改私有”。现在,它已加入它的工作如预期!感谢缩小下来,并帮助了:) SPAN>
猜你喜欢
  • 1970-01-01
  • 2015-08-19
  • 1970-01-01
  • 2019-11-03
  • 2017-03-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-13
相关资源
最近更新 更多