首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将跟踪添加到播放列表spotify api web中

将跟踪添加到播放列表spotify api web中
EN

Stack Overflow用户
提问于 2017-01-30 20:35:13
回答 1查看 3.1K关注 0票数 1

我试图向协作播放列表中添加一个轨道,这是我的访问令牌代码。

代码语言:javascript
复制
$credentials = 'client_id:client_secret';

$headers = array(
           'Accept: */*',
           'Content-Type: application/x-www-form-urlencoded',
           'User-Agent: runscope/0.1',
           'Authorization: Basic '.base64_encode($credentials));

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://accounts.spotify.com/api/token');
curl_setopt($ch, CURLOPT_HTTPHEADER,$headers);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,'grant_type=client_credentials');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
$response = json_decode($response, true);
echo $token = $response['access_token'];
curl_close($ch);

在我的页面中,用户没有被记录,所以我创建了协作播放列表。

这是我的add playlist函数

代码语言:javascript
复制
var addplaylist = function (id,token) {

      $.ajax({
        dataType: 'text',
        type: 'post',
        url: 'https://api.spotify.com/v1/users/entelperú/playlists/6sU8XOS7BLicR3COsc0Rhp/tracks?uris=spotify:track:'+ id,
        headers: {
          Authorization: "Bearer "+token,
        },success: function (response) {
          alert(response);
        }
    });
  };

但它会返回这个

{“错误”:{“状态”:403,“消息”:“此请求需要用户身份验证”}}

我不知道发生了什么,我已经创建了访问令牌。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-31 12:54:57

{“错误”:{“状态”:403,“消息”:“此请求需要用户身份验证”}}

您正在向将曲目添加到播放列表中发出的请求需要一个连接到用户的访问令牌。

您使用的访问令牌可以来自三个不同的oAuth 2.0流。其中一个流,客户端凭据流,返回匿名访问令牌。或者更确切地说,是没有连接到任何用户的访问令牌。阅读更多关于授权指南中的流的内容。

对于某些端点,可以使用匿名访问令牌。比如检索播放列表。但是很多操作,如添加曲目、跟踪艺术家和保存曲目,都需要用户给予应用程序代表他们的明确许可。此权限也称为范围

因此,您需要的是使用与现在使用的oAuth 2.0流不同的流。哪一种取决于您正在构建的应用程序类型。重要的是您需要一个用户来批准应用程序正在执行的操作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41944931

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档