我正在尝试通过spotipy
它的prompt_for_user_token
实用程序运行 Spotify 身份验证工作流程。我正在按照这里的指示,官方 Spotify Web API 教程,逐字逐句地告诉我。并在此处使用 Paul Lamere 的 Spotipy 项目中的示例
我有一个高级 Spotify 帐户和一个注册应用程序,其中包含客户端 ID 和客户端密码(均为 32 个字符串)以及示例 ( ...//localhost:8888/callback
) 中给出的重定向 URI。全部显示在我的申请页面 ( ...//developer.spotify.com/my-applications
)
app.js
从教程中的“authentication_code”示例(已修改为包含我的应用程序的客户端 ID、客户端密码和重定向 URI)启动我的应用程序服务器。
$node app.js
Listening on 8888
CLIENT_ID
按照教程中的说明将我的应用程序的、CLIENT_SECRET
和导出REDIRECT_URI
到我的环境后,我使用我的用户名(实际上是用户“id” - 9 位数字)运行user_playlists.py
Paul Lamere 示例中的示例脚本,因为它是唯一的命令行参数。spotipy
浏览器 (chrome) 之前已打开,可选择通过 Facebook 或密码登录 Spotify。我选择 Facebook,然后我收到一个浏览器警报,内容如下:
localhost:8888 says:
There was an error during the authentication.
使用浏览器网址:
...localhost:8888/#error=state_mismatch
并且prompt_for_user_token
函数永远不会返回。每次我现在运行示例脚本时,浏览器都会打开,但会打开一个空白页面,并带有相同的浏览器警报和 URL。
对任何人来说,我做错了什么,或者如何找出身份验证错误的性质或任何细节,或者如何解决state_mismatch
错误,甚至它意味着什么,是否显而易见?