Поток кода авторизации API Spotify с помощью PythonPython

Программы на Python
Ответить
Anonymous
 Поток кода авторизации API Spotify с помощью Python

Сообщение Anonymous »

Я пытаюсь выполнить поток кода авторизации с помощью API Spotify, чтобы в конечном итоге добавить песни в список воспроизведения. Я создаю это с нуля и не использую какие-либо библиотеки, такие как Spotipy.
Мне удается успешно достичь конечной точки авторизации, но у меня возникают некоторые проблемы. с конечной точкой токена. Вот код, который у меня есть:

Код: Выделить всё

# URLS
AUTH_URL = 'https://accounts.spotify.com/authorize'
TOKEN_URL = 'https://accounts.spotify.com/api/token'
BASE_URL = 'https://api.spotify.com/v1/'

# Make a request to the /authorize endpoint to get an authorization code
auth_code = requests.get(AUTH_URL, {
'client_id': CLIENT_ID,
'response_type': 'code',
'redirect_uri': 'https://open.spotify.com/collection/playlists',
'scope': 'playlist-modify-private',
})
print(auth_code)

auth_header = base64.urlsafe_b64encode((CLIENT_ID + ':' + CLIENT_SECRET).encode('ascii'))
headers = {
'Content-Type': 'application/x-www-form-urlencoded',
'Authorization': 'Basic %s' % auth_header.decode('ascii')
}

payload = {
'grant_type': 'authorization_code',
'code': auth_code,
'redirect_uri': 'https://open.spotify.com/collection/playlists',
#'client_id': CLIENT_ID,
#'client_secret': CLIENT_SECRET,
}

# Make a request to the /token endpoint to get an access token
access_token_request = requests.post(url=TOKEN_URL, data=payload, headers=headers)

# convert the response to JSON
access_token_response_data = access_token_request.json()

print(access_token_response_data)

# save the access token
access_token = access_token_response_data['access_token']
Когда я запускаю свой скрипт, я получаю следующий вывод в терминале:

Код: Выделить всё

{'error': 'invalid_grant', 'error_description': 'Invalid authorization code'}
Traceback (most recent call last):
File "auth.py", line 48, in 
access_token = access_token_response_data['access_token']
KeyError: 'access_token'
Может ли кто-нибудь объяснить мне, что я здесь делаю не так?


Подробнее здесь: https://stackoverflow.com/questions/654 ... ith-python
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»