Spotify Web API Ajax
Posted
技术标签:
【中文标题】Spotify Web API Ajax【英文标题】: 【发布时间】:2015-04-21 11:01:42 【问题描述】:我正在制作一个小型副项目,以便更好地使用网站 API 和 jQuery。不幸的是,我做得不好。我想做的是使用 Spotify Web API 来获取我的 3 个播放列表,然后将它们放在网页上。
我目前有:
var accessToken = "my-token";
$.ajax(
url: 'https://api.spotify.com/v1/users/my-username/playlists?limit=3&offset=0',
type: 'GET',
headers
'Authorization' : 'Bearer ' + accessToken;
,
success: function(data)
console.log(data);
);
我收到以下错误:
Failed to load resource: the server responded with a status of 401 (Unauthorized)
有没有人知道如何做到这一点。在我弄清楚之后,我将为将来不熟悉使用 jQuery 访问 Web API 的任何人创建一个快速操作指南
【问题讨论】:
您是否首先在these steps之后获得了访问令牌? @PatrickQ 我现在想起来可能是错误地获取了我的访问令牌。我只是去了 Web 控制台并以这种方式生成了一个。 【参考方案1】:当访问令牌过期或访问令牌无效时,Spotify 的 Web API 返回 HTTP 状态代码 401 Unauthorized (Error code documentation)。打印出错误响应的正文将为您提供有关 API 返回 401 原因的更多线索。
访问令牌会在一小时后过期,但可以根据您检索它的方式进行刷新。您可以在 Authorization Guide 中阅读更多关于获取访问令牌的不同方法的信息,或查看 Github 上的 web-api-auth-examples 项目。
【讨论】:
在仔细阅读之后,我可能获取了错误的访问令牌。如果我的以下问题是基本的,我对这些类型的事情不太好,很抱歉:在三个 git hub 示例中,是否有一个我不需要用户登录?我只想能够提供我的客户 ID/密钥,然后访问我的播放列表,而不是让用户使用他们的 spotify 帐户登录。有这样的可能吗? 是的,客户端凭据流允许您在不使用身份验证的情况下发送请求。这里的一个重要区别是,您不能代表用户使用以这种方式获得的访问令牌进行任何更改,因为没有用户授予您的应用程序这样做的权限。另请注意,客户端凭据流适用于服务器到服务器的通信,因为您需要在请求中包含您的 client_secret。希望这会有所帮助! 是的,非常感谢!几乎作为我办公室的一个副项目,我正在制作一个将在内部托管的办公室点唱机。然后,用户只需前往站点位置,即可为下一首歌曲投票。然后我们从我们拥有的播放列表中获取那首歌。现在我只需要更好地使用 Node.js :p 听起来是个有趣的项目。祝你好运!以上是关于Spotify Web API Ajax的主要内容,如果未能解决你的问题,请参考以下文章
spotify-web-api-node - WebapiError:未经授权
spotify web api授权码授予thelinmichael / spotify-web-api-java android
spotify-web-api-node:authorizationCodeGrant() 给出 400 - 错误请求