多个范围 - WebAPI Spotify (Spotipy)

问题描述 投票:0回答:1

我的问题是: 是否可以通过 WebAPI Spotify(特别是 Spotipy)同时使用两个或多个作用域? 例如,使用范围“user-modify-playback-state”和“user-library-read”

谢谢

spotify spotipy
1个回答
12
投票

访问 Spotify API 时可以使用多个范围。我没有直接使用

Spotipy
但如果它与我使用过的软件包类似,您可以执行以下操作(例如):

import sys
import spotipy
import spotipy.util as util

scope = 'user-library-read user-modify-playback-state'

if len(sys.argv) > 1:
    username = sys.argv[1]
else:
    print "Usage: %s username" % (sys.argv[0],)
    sys.exit()

token = util.prompt_for_user_token(username, scope)

if token:
    sp = spotipy.Spotify(auth=token)
    results = sp.current_user_saved_tracks()
    for item in results['items']:
        track = item['track']
        print track['name'] + ' - ' + track['artists'][0]['name']
else:
    print "Can't get token for", username

该示例取自 https://spotipy.readthedocs.io/en/latest/#authorized-requests 并适用于 >1 范围。

注意:如果您的用户使用不同的范围进行身份验证,那么您将需要让他们重新验证您的应用程序,以便通过新令牌/刷新令牌获得对进一步范围的访问权限。

© www.soinside.com 2019 - 2024. All rights reserved.