2

两个问题:

问题 1。

我们需要从我们的后端(PHP)管理 4 个 Spotify 用户的播放列表(无需用户登录). 我们网站的访问者可以向我们的网站提交他们喜欢的多首歌曲。基于此,我们创建和管理 4 个播放列表,其中包含“提交最多的歌曲”。我们希望从我们的 PHP 后端自动化这个过程,而不需要在几个月的时间里每天手动管理播放列表。我们想为此使用 Spotify API,但需要用户访问令牌来访问和管理用户播放列表。我们创建了一个概念证明,它“用 PHP 模拟浏览器”。我们登录、检索身份验证令牌、使用身份验证令牌请求访问令牌,然后执行必要的 API 调用——所有这些都无需用户干预。这种方法有效,但我们怀疑并知道这不是 100% 的方法:)。我们不是在滥用 API 或其他任何东西之后,但是,如果这不是正确的方法,我们如何定期自动管理这 4 个用户播放列表?请注意我们的后端是 Apache – 基于 PHP。我们也可以使用 NodeJS,但话又说回来,这也不是要走的路。

问题2。

用户向我们的网站提交歌曲。当用户在搜索字段中输入(歌曲标题/艺术家姓名)时,一秒钟后,我们对 Spotify API 执行 ajax 调用,并根据输入显示搜索结果。考虑到网站上预期的访问者数量,这可能会给 API 带来大量流量。文档(https://developer.spotify.com/web-api/user-guide/#rate-limiting)对应用的速率限制不是很清楚。是否可以更好地说明这些速率限制,因为我们希望防止这种情况破坏我们的网站

提前致谢。

4

1 回答 1

3

问题 1

如果您想在某个用户的库中创建播放列表,您需要该用户将这些权限授予您的应用程序。

在您的情况下,您将实施授权代码流程以获取刷新和访问令牌。

存储获取的访问令牌和刷新令牌,使用访问令牌执行请求,并在访问令牌过期时使用刷新令牌更新访问令牌。

如果您要在您拥有的用户中管理这些播放列表,则无需向用户显示任何登录表单。登录一次,然后在脚本中使用获取的令牌,该脚本将定期更改用户的播放列表。

问题2

目前 Spotify 开发者网站上没有指定限制,但它们的 API 应该能够处理您的搜索请求。如果您想更加安全,请验证您的请求,以便它们受 client_id 基础限制。要获取这样一个不包含任何用户信息的令牌,您可以使用Client Credentials flow

于 2014-09-08T13:29:30.237 回答