尝试通过 spotipy 库控制另一台设备上的播放时出现错误 403 (Spotify Web API)

Error 403 when trying to control playback on another device through spotipy library (Spotify Web API)

描述错误

每当我尝试在 Spotify 设备上开始播放时,我都会收到 403 错误。

我正在尝试使用第 197 行的代码 client.start_playback(device_id=spotify_device_id, context_uri=tag_uri) 在我的 Google 家用迷你扬声器上播放(使用另一个名为 pychromecast 的库,但它正在运行)。

403错误通常是在用户没有高级版(我认为)时出现的。 虽然我有 Premium 并且已经仔细检查过。授权正常。

我的代码

https://pastebin.com/fha4Rbdh

预期行为

实际行为

输出

https://pastebin.com/Ejizn084

环境:

其他上下文

我的代码在 Windows 10 上工作,然后在转移到我的 pi 后它就不再工作了。 我认为它没有正确授权(实际上不是),所以我修复了它,但我仍然遇到同样的错误。

我认为这个错误可能与我使用的范围有关,即:

_scope = 'streaming user-read-playback-state user-modify-playback-state'

请帮忙!

我刚才遇到了这个问题,但如果我没记错的话,我一直将 Spotify URI 设置为小写,但 Spotify URI 是区分大小写的。因此,当我请求开始播放这些 URI 时,Spotify 不理解其中的一些但理解其他的(没有大写字母的 URI)。这就解释了为什么它在我的笔记本电脑上有效,但在 raspberry pi 上无效。我在每个上使用了不同的 URI(不是很科学)。

我断断续续调试了 3 个月才解决这个问题。有时是最小的改变解决了最大的问题。