Zobaczmy… Chcę pobrać ostatnio słuchany kawałek i akurat w momencie pobierania faktycznie jakiegoś słucham. Wysyłam więc żądanie pod odpowiedni adres:
Co otrzymuję? (Oczywiście XML, tutaj przedstawiam przeparsowaną wersję)
Zwróćcie uwagę na obecność atrybutu nowplaying. Widzimy, że ma wartość true. Ale zaraz… Parametr limit ustawiliśmy na 1, a otrzymujemy dwa utwory, dziwne.
Dobra, a teraz wykonajmy to samo zapytanie kiedy muzyka nie jest w danej chwili odtwarzana.
Co się zmieniło oprócz tytułu, utworu i linków? ;) Parametr track nie posiada już jako wartości tablicy, a pojedynczy obiekt. Tak, tym razem otrzymaliśmy właściwą liczbę utworów. Żeby otrzymać równie poprawną ilość w momencie, kiedy utwór jest odtwarzany, parametr limit trzeba ustawić na 0, ale kiedy nic nie będzie odtwarzane… to parametr ten z taką wartością zostanie zignorowany.
Sprawia to problem, bo raz otrzymujemy tablicę, a raz ‘obiekt’. Możemy to obejść - aby zawsze otrzymywać tablicę, jako wartość dla parametru limit ustawiamy… 2 ;)