代码之家  ›  专栏  ›  技术社区  ›  Raveesh yadav

Spotify API“未提供令牌”错误代码401

  •  0
  • Raveesh yadav  · 技术社区  · 3 年前

    在使用Spotify API提取用户热门曲目时,我一直收到401个错误。代码如下所示:

    import json
    from requests import post, get
    import base64
    
    def get_token():
        auth_string = CLIENT_ID + ":" + CLIENT_SECRET
        auth_bytes = auth_string.encode("utf-8")
        auth_base64 = str(base64.b64encode(auth_bytes), "utf-8")
    
        url = "https://accounts.spotify.com/api/token"
        headers = {
            "Authorization" : "Basic " + auth_base64,
            "Content-Type" : "application/x-www-form-urlencoded"
        } 
    
        data = {"grant_type" : "client_credentials"}
        result = post(url, headers=headers, data=data)
        json_result = json.loads(result.content)
        token = json_result["access_token"]
        return token
    
    def searchArtist(token, artist_name):
        url = "https://api.spotify.com/v1/search"
        headers = {
            "Authorizations" : "Bearer " + token
        }
        query = f"?q={artist_name}&type=artist&limit=1"
        query_url = url + query
        result = get(query_url, headers=headers)
        data = result.json()
        print(data)
    
    myToken = get_token()
    searchArtist(myToken, "ACDC")
    

    显示以下错误:

    {“错误”:{“状态”:401,“消息”:“未提供令牌”}}

    我是不是错过了什么?

    我原以为曲目会出现。我看过Spotify API文档,我一直在做正确的事情。也许我错过了什么,或者什么是真实的,我说不清。

    1 回复  |  直到 3 年前
        1
  •  0
  •   Omid Roshani    3 年前

    searchArtist 你添加了 Authorizations 这是不对的 Authorization 没有 s 最后。