TK3 - kokjp1/TechTrack GitHub Wiki
Sessie liedjes bijhouden; Track Snapshots of alleen het ID
Waarom ik volledige track-snapshots opsla (en niet alleen een ID)
Tijdens de sessie sla ik niet alleen het trackId op, maar het hele trackobject zoals het op dat moment door Spotify wordt teruggegeven (titel, artiesten, album, duration, popularity, image, etc.). Functioneel en technisch is dit simpelweg de betere keuze.
1. Geen extra API-calls nodig in de recap
Als je alleen IDs opslaat, moet je voor de recap álle tracks opnieuw ophalen bij Spotify. Dat is:
- trager
- errorgevoeliger
- gevoelig voor rate-limits
- afhankelijk van een geldige auth bearer token
Met snapshots kan de recap volledig lokaal worden gerenderd.
2. Je bevriest de sessierealiteit
Spotify-data is niet statisch. Dingen veranderen constant:
- populariteit
- albuminformatie
- liedje kan van spotify af gehaald worden
- artiestennaam
- afbeelding
Door een snapshot op het moment van luisteren op te slaan, blijft de sessie correct en historisch juist.
3. Werkt ook bij expired tokens
Als tijdens de recap de token is verlopen, kan je met alleen IDs niks meer ophalen. Met snapshots blijft alle data direct beschikbaar, zonder afhankelijkheid van Spotify.