Sitze gerade an meinem Praxisprojekt und habe ein nerviges Problem: Ich binde eine REST-API an, die vom Anbieter laufend weiterentwickelt wird. Jedes Mal wenn sich dort was ändert (neue Pflichtfelder, umbenannte Attribute, geänderte Response-Struktur), bricht mein Client. Ich flicke das dann immer notdürftig, aber das kann ja keine Dauerlösung sein.
Ich habe mich etwas eingelesen und finde in der Theorie ganz unterschiedliche Ansätze zur Versionierung:
- Versionsnummer in der URL (z. B. /v1/, /v2/)
- Versionierung über Header (z. B. Accept-Header mit Version)
- Versionierung über Query-Parameter
Was mich interessiert: Wie macht man das in der Praxis, wenn man selbst nicht der API-Anbieter ist, sondern nur Konsument? Baut man sich eine Art Adapter-Schicht, die die verschiedenen Versionen abfängt und intern normalisiert? Oder pinnt man sich einfach stur auf eine Version fest und ignoriert Updates, solange es geht?
Und für alle, die das auch klausurtechnisch brauchen: Ist das Thema API-Versionierung überhaupt prüfungsrelevant bei euch, oder eher nur "nice to know" aus der Praxis? Würde mich über Erfahrungen freuen, gerne auch mit Beispielen, wie ihr sowas strukturell gelöst habt.