Heyo. В свободное время я пытаюсь создать небольшое приложение, использующее API Spotify. Мне удалось заставить мою программу использовать oAuth 2, чтобы позволить пользователю авторизовать мое приложение для манипулирования их Spotify, но я столкнулся с проблемой с определенной конечной точкой в Spotify API.
Конечная точка, с которой у меня возникли проблемы: https://api.spotify.com/v1/me/player/play (вот ссылка на их документы для конечной точки https://developer.spotify.com/console/put-play/). Всякий раз, когда я пытаюсь сделать запрос пут на конечную точку, я получаю400 код состояния с сообщением "Malformed json" Я получаю это сообщение, даже когда копирую / вставляю свой собственный json из документов, поэтому я не думаю, что это проблема с тем, как я форматирую свой json, кроме того, что я использовал json раньшедля вызова других конечных точек, и у них не было проблем с моим форматированием этих вызовов.
Вот мой код:
headers = {"Authorization":"Bearer {}".format(access_token)}
url = 'https://api.spotify.com/v1/me/player/play'
payload = {"context_uri": "spotify:album:5ht7ItJgpBH7W6vJ5BqpPr"}
r = requests.put(url, headers=headers, data=payload)
print(r)
print(r.text)
Чтобы уточнить, access_token
- это токен доступа, которыйЯ получил от их процесса авторизации, и я использую python-запросы для выполнения http-запросов (Вот документы для этого: https://requests.kennethreitz.org/en/master/)
Мне интересно, если проблема связана с тем, что Spotifyиспользует двоеточия и их идентификаторы дорожек, а двоеточия также используются в JSON. Я видел в другом потоке, что мне следует попытаться добавить "Content-Type":"application/json"
к моим заголовкам, но это никак не изменило результат.
Любая помощь очень ценится, и если вам нужна дополнительная информация, пожалуйста, дайте мне знать. Спасибо!