django Spotipy无法使用SpotifyOAuth访问用户信息(授权流错误)

dsekswqp  于 2022-12-20  发布在  Go
关注(0)|答案(1)|浏览(153)

我尝试使用spotify和spotipy(我使用django rest框架)来做一个API。
我遵循了文档,当我使用
Spotify客户端凭据
它工作正常,但是我不能访问用户的信息(在我的例子中,我试图获取用户名)。
Spotify认证
但事情变得更糟,我有一个“测试”端点,当我连接我的帐户, Postman 打开吨的标签
https://accounts.spotify.com/authorize?client_id=....&response_type=code&redirect_uri=.. .
下面是我的代码:

@api_view(['GET'])
@permission_classes([permissions.IsAuthenticated])
def test(request):
    if request.method == 'GET': 
        urn = 'spotify:artist:3jOstUTkEu2JkjvRdBA5Gu'
        sp = spotipy.Spotify(auth_manager=SpotifyOAuth(client_id=envi.SECRET_ID, client_secret=envi.SECRET_PASS, redirect_uri=envi.SPOTIPY_REDIRECT_URI))

        artist = sp.artist(urn)
        print(artist)

        user = sp.current_user()
        print(user)
        return JsonResponse(test, safe=False)

这只是文档中的代码,但我不知道去哪里找。

mzillmmw

mzillmmw1#

我通过在数据库中存放访问令牌来解决这个问题,并使用该令牌创建了另一个spotipy对象(这不是最好的做法,因为我在数据库中有访问令牌,但它工作了)。

相关问题