Obsługa Spotify przez terminal? A po co to komu?🤔

Szczerze mówiąc nie wiem…

Ale mi się przydało, bo dzięki temu zrozumiałem jak działa REST API i uwierzytelnianie OAuth 2.0  😉

Za mną kolejny projekt, tym razem dużo szybszy i prostszy, w porównaniu do ostatniego lotniska, ale… niezwykle wartościowy pod kątem nauki. 

🎯 Wyzwanie: 

Napisać prostą aplikację konsolową, która połączy się z API Spotify i umożliwi: 

  • Wyszukanie listy albumów po wpisaniu nazwy lub jej fragmentu
  • Wybieranie albumu, który chcemy odtworzyć
  • Pobranie listy dostępnych urządzeń zarejestrowanych na koncie Spotify
  • Wybranie urządzenia i przekazanie odtworzenia na nim wybranego albumu

🛣️ Droga:

Na początku wszystko pięknie, piszę metodę za metodą i wszystko śmiga jak za dotknięciem czarodziejskiej różdżki. Biorę się za przedostatni punkt (pobieranie urządzeń) i…. niby działa, ale nie do końca? Szukam, testuję, szukam, testuję, wszystko wygląda ok… i nagle – eureka! Zdałem sobie sprawę, że przecież nie korzystam ze Spotify już od prawie roku i nie mam zainstalowanego go na ŻADNYM z moich urządzeń 😂

Szybka instalacja i… sukces! Urządzenia znalezione. 

Ostatnia metoda – przekazanie albumu do odtworzenia i…. znowu coś jakby nie tak. 

I tu się dowiedziałem co oznacza OAuth 2.0…😂

Okazało się, że operacje modyfikujące stan aplikacji (np. zmiana utworu na urządzeniu) wymagają tokena z innym, szerszym zakresem uprawnień (tzw. „scope”), niż ten podstawowy, służący tylko do odczytu danych. 

Całe szczęście wiem, jak cudownie modele językowe radzą sobie z tłumaczeniem i przeszukiwaniem dokumentacji. Wrzucam dokumentację Spotify API do modelu, parę pytań i mam… Zmodyfikowałem zapytanie o token, uwzględniając odpowiedni przepływ autoryzacji OAuth 2.0 i… Mamy to! 💪

Wynik:

Nie tylko działający projekt w portfolio, ale przede wszystkim praktyczne zrozumienie mechanizmów REST API i autoryzacji OAuth 2.0. 

Kolejne cenne narzędzie ląduje w moim stacku technologicznym. 💪 

Ale nie zwalniam tempa. Kolejne wyzwania już czekają! 😉

#Programowanie #RESTAPI #API #OAuth2 #SpotifyAPI #Developer #NaukaProgramowania #Kodowanie #Projekty #Portfolio #Tech #TechStack #SoftwareDevelopment #LearningByDoing #Backend 

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola oznaczone są *

*
*