首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spotipy -验证成功的身份验证

Spotipy -验证成功的身份验证
EN

Stack Overflow用户
提问于 2022-04-19 20:39:38
回答 2查看 112关注 0票数 0

我想知道如何验证用户是否正确地输入了spotify开发人员配置文件信息。我有一个文件,credentials.py,需要3个常量才能获得spotify API令牌。在main.py中,我使用这样的常量。

代码语言:javascript
复制
def authenticate_user():
    if not credentials.SPOTIPY_CLIENT_SECRET or not credentials.SPOTIPY_CLIENT_ID:
        raise RuntimeError("Spotify credentials have not been set! Check credentials.py")

    os.environ["SPOTIPY_CLIENT_ID"] = credentials.SPOTIPY_CLIENT_ID
    os.environ["SPOTIPY_CLIENT_SECRET"] = credentials.SPOTIPY_CLIENT_SECRET
    os.environ["SPOTIPY_REDIRECT_URI"] = credentials.SPOTIPY_REDIRECT_URI

    sp = spotipy.Spotify(auth_manager=spotipy.SpotifyOAuth())
    return sp

结果变量sp似乎没有任何方法来验证它是否已被成功验证。尝试使用任何方法时,都会将您发送到带有相应spotify端点的网页,显示请求失败。退出页面时,不会引发错误,程序会挂起。如何对用于使用spotify服务器进行身份验证的无效信息抛出错误?

EN

回答 2

Stack Overflow用户

发布于 2022-04-19 20:44:18

您可以在验证时检查upon是否返回布尔值,只需创建如下所示的if语句:

代码语言:javascript
复制
If (sp == True):
  Print('credentials valid')
票数 0
EN

Stack Overflow用户

发布于 2022-04-19 20:48:35

基于Spotify的docs 这里

您应该得到一个Spotify.oauth2.SpotifyOauthError,然后您可以尝试和排除代码。

你可以这样做:

代码语言:javascript
复制
try:
    sp = spotipy.Spotify(auth_manager=spotipy.SpotifyOAuth())
    return sp
except SpotifyOauthError as e:
    raise RuntimeError(f"Spotify credentials didn't work, error={e}")

只是不要忘记从Spotify.oauth2.SpotifyOauthError导入异常

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71931048

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档