我刚开始使用某种REST协议,在从cURL请求中取回访问令牌时遇到了困难。
<?php
/* Spotify Application Client ID and Secret Key */
$client_id = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
$client_secret = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
/* Get Spotify Authorization Token */
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://accounts.spotify.com/api/token' );
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt($ch, CURLOPT_POST, 1 );
curl_setopt($ch, CURLOPT_POSTFIELDS, 'grant_type=client_credentials' );
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: Basic '.base64_encode($client_id.':'.$client_secret)));
$result=curl_exec($ch);
$json = json_decode($result, true);
echo "Results of json: ". + $json['access_token'];
/* Get Spotify Artist Photo */
echo "<pre>";
exec('curl -i "https://api.spotify.com/v1/search?<br>q=Maycon+%26+Vinicius+&limit=1&type=artist" -H "Accept: application/json" -H "Authorization: Bearer '.$json['access_token'].'" -H "Content-Type: application/json" 2>&1', $pp);
echo implode("\r\n", $pp);
?>
您是否尝试过其他请求并遇到类似的身份验证错误?为了测试,我对您的查询进行了一些简化,以便在我的系统上测试它,它返回了一个艺术家,所以看起来它是工作的。
curl-i“https://api.spotify.com/v1/search?q=maycon+%26+vinicius+&limit=1&type=artist”-h“accept:application/json”-h“authorization:barer$accesstoken”-h“content-type:application/json”
在此处为客户端凭据流使用Spotify文档: 我能够在谷歌应用程序脚本(Javascript)中创建API请求。 我对两件事感到困惑,请能够回答这两件事。 1). Spotify文档声明在授权标头中的客户端凭据之前输入“Basic”。 然而,当我运行这段代码时,我得到了这个错误 如果我在使用客户端凭据流,为什么它认为我在使用承载令牌?(同样,如果我将身份验证更改为Bearer,我会收到401错误“
我已经读了很多关于CORS,角,节点等的东西。老实说,我很困惑这些我应该使用哪一个,我不知道如何使用。有人能帮我简化一下吗?
Spotify获取播放列表文档:https://developer.Spotify.com/web-api/get-playlists-tracks/ Spotify获取客户端凭据文档:https://developer.Spotify.com/web-api/authorization-guide/ 第一个问题,是否可以使用客户机凭据流获得用户播放列表曲目?我使用这个流,因为我无法弹出一个登录框
我的服务器上再次收到错误。 { “错误”: “invalid_client” } 我已经编码到base64并将域列入了白名单,但仍然得到相同的错误。我会感激任何帮助,这让我发疯了,哈哈。
我正试图用Node.js和Express编写一个实用程序,它将使用Spotify API。然而,我一直在试图找出使用Express的“客户端凭证流”来获得使用API的访问令牌的最佳方式... https://developer.spotify.com/documentation/general/guides/authorization-guide/#client-credentials-flow
直截了当的问题,希望有一个直截了当的答案。我试图使用request通过Node.js实现客户端凭证流。这是我的代码 无论我做什么,响应体总是 我尝试过使用 curl 提出请求,结果相同。 这意味着这是凭据的问题。我肯定为我的应用程序使用了正确的客户端ID和客户端秘密,这让我相信是编码导致了问题。 我的编码正确吗?如果是这样,还有什么原因呢?