当前位置: 首页 > 知识库问答 >
问题:

尝试使用Spotipy授权api调用时INVALID_CLIENT

陈允晨
2023-03-14

我正在尝试调用Spotify API并设置了一个应用程序/获取了我的客户端ID和密钥。以下是我的代码示例(详细内容已屏蔽):

import spotipy
import spotipy.util as util
from spotipy.oauth2 import SpotifyClientCredentials

cid ="xx" 
secret = "xx"
username = "xx"

client_credentials_manager = SpotifyClientCredentials(client_id=cid, client_secret=secret) 
sp = spotipy.Spotify(client_credentials_manager=client_credentials_manager)

scope = 'user-library-read playlist-read-private'
token = util.prompt_for_user_token(username,scope,client_id='http://localhost:8888/callback/',client_secret='http://localhost:8888/callback/',redirect_uri='http://localhost:8888/callback/')

if token:
    sp = spotipy.Spotify(auth=token)
else:
    print("Can't get token for", username)
cache_token = token.get_access_token()

sp = spotipy.Spotify(cache_token)
currentfaves = sp.current_user_top_tracks(limit=20, offset=0, time_range='medium_term')

print(currentfaves)

我已经确保我的URL与Spotify应用程序开发页面中注册的完全相同,并且我已经将客户端ID、重定向URI和客户端密钥添加到我的环境变量中。

到目前为止,打开了一个单独的选项卡(https://accounts.spotify.com/authorize?client_id=http://localhost:8888/callback/

共有1个答案

许正平
2023-03-14
token = util.prompt_for_user_token(username,scope,client_id='http://localhost:8888/callback/',client_secret='http://localhost:8888/callback/',redirect_uri='http://localhost:8888/callback/')

这里是否有错字,因为您复制了重定向uri也作为客户端ID和机密?

 类似资料:
  • 我正在尝试使用spotipy向特定用户验证我的python应用程序。我以前和其他一些用户做过这件事,没有任何问题。然而,每当我尝试使用这个用户时,我总是得到“{”错误“:“无效的授权”,“错误描述“:“无效的授权码”}” 我还尝试了几种手动方式,包括卷曲: curl-H“授权:基本OTQxNDliNjI3…WRhMzk5YTY2ZTliZWY=“-d授权类型=授权代码-d代码=AQByvdq4Vr

  • API使用步骤 成为目睹云认证用户 登录控制台https://www.wenjiangs.com/doc/QSfBOXSPconsole/, 进入系统管理下的TOKEN管理。 使用第二步中得到的TOKEN,便可以访问目睹云API中的全部接口服务,如果请求没有带上TOKEN,目睹云API的安全机制将会视其为未授权访问操作,并将其拦截。 API域名 https://www.muducloud.com

  • 我从关于如何使用jwt进行授权的演练中获取了第2节,这样我就可以从我的客户端获得一个访问令牌,并授权他们使用该api。然而,我似乎不能让这个工作。我不断收到邮递员发来的401消息,还附有一句: 教程链接:http://bitoftech.net/2014/10/27/json-web-token-asp-net-web-api-2-jwt-owin-authorization-server/ 访问

  • 我创建了一些Lambda函数,并使用SAM进行了部署。部署是成功的,但当试图到达endpoint时,我总是获得 即使我使用头发送正确的承载令牌。然后,如果我去Authorizer并运行测试,它会很好地通过并在CloudWatch中生成日志,但是当我从前端应用程序或REST客户端应用程序运行到endpoint的请求时,我会得到未经授权的消息,并且检查CloudWatch,就不会执行Authorize

  • 我正在尝试从c#WPF桌面应用程序向我的WebAPI发送帖子。 不管我做什么 {"错误":"unsupported_grant_type"} 这就是我所尝试的(我已经尝试了我能找到的一切): 此外,开发web api当前正在进行测试:http://studiodev.biz/ 基本超文本传输协议客户端对象: 使用以下发送方法: 失败后,我在谷歌上搜索并尝试: 同样的结果,所以我尝试: 注意:我可以